Агуулгын хүснэгт:

UCL - Суулгасан - Сонгох ба байрлуулах: 4 алхам
UCL - Суулгасан - Сонгох ба байрлуулах: 4 алхам

Видео: UCL - Суулгасан - Сонгох ба байрлуулах: 4 алхам

Видео: UCL - Суулгасан - Сонгох ба байрлуулах: 4 алхам
Видео: CRISTIANO RONALDO: ALL #UCL GOALS! 2024, Долдугаар сарын
Anonim
UCL - Суулгасан - сонгох ба байрлуулах
UCL - Суулгасан - сонгох ба байрлуулах

Энэхүү зааварчилгаа нь 2D сонгох, байрлуулах нэгжийг хэрхэн яаж хийх, хэрхэн кодлох талаар өгүүлэх болно.

Алхам 1: Compunets

Compunets
Compunets

1х Адрио Мега

2x stepper мотор (бид JLB Stepper Motor, 17H1352-P4130 загварыг ашигласан)

Arduino -д зориулсан 2x Stepper Motor Drive Controller Board Module L298N Dual H Bridge DC

1х servo мотор

3х 10 к ом эсэргүүцэл

2x Nylon шаржигнуур

1х 12в цахилгаан хангамж

Хүрээнд зориулж хэдэн мод

Утас

Алхам 2: Барилга

Барилга
Барилга
Барилга
Барилга
Барилга
Барилга

Барилга угсралтын явцад хийх ёстой хамгийн эхний зүйл бол машин сонгох хэмжээ, хэлбэрийг тодорхойлох явдал байв

Эхлээд бид үндсэн хэлбэрийн модыг бүтээдэг. Бид 50см -ээс 25см -ээс 30см хэмжээтэй хүрээ сонгож байрлууллаа. Хүрээ, гүүр, өргөх гарнаас бусад бүх зүйлийг лазераар хийсэн байв.

Энд бүх холбоос файлууд https://myhub.autodesk360.com/ue2d2a959/g/projects/20181107158970606/data/dXJuOmFkc2sud2lwcHJvZDpmcy5mb2xkZXI6Y28ud2s5b0NQNGNTT3lhQ0Z2OVowaHJJQQ байна

Дараа нь бид дамар системд орохыг хүссэн. Энд бид 50 мм -ийн хоёр цагираг, 20 мм -ийн нэг бөгжтэй явсан. Дараа нь бид 20 мм -ийн хажууд паракордыг цавуугаар хийнэ. Үүний дараа бид 20 мм -ийн бөгжний хоёр талд 50 мм -ийн хоёр цагиргийг шахав.

20 мм

50 мм

Дараа нь бид гар руу слайд хөтөч зохион бүтээх хэрэгтэй. Энд бид хоёр тал, нэг арын хавтан хийсэн.

Үүнийг дараа нь U хэлбэрээр наажээ. Дараа нь бид үүнийг гүүртэй холбосон.

Хажуугийн хавтан

Арын хавтан

Одоо гараа дээш, доош хөдөлгөх эд ангиуд бэлэн боллоо. Бид үүнийг нааш цааш нь хөдөлгөх хэрэгтэй.

Үүнийг зохион бүтээхдээ шүд нь хоорондоо нийцэж байгаа эсэхийг шалгаарай. Тиймээс хоёуланг нь нэг төслийн газарт бүтээсэн.

Алхам 3: Код

Код
Код
Код
Код
Код
Код

Програмчлал нь маш энгийн бөгөөд 5 хэсгээс бүрдэнэ

  1. Номын санг оруулах, дотоод болон IO ашиглах хувьсагчдын тохиргоо
  2. Рам руу оролт ачаалах
  3. Секвенс, хүссэн хөдөлгөөнөө сонгож байна.
  4. Stepper/servo байрлалын хяналт
  5. Дэлхийд гарц

Бид хэсэг болгоныг тайлбарлах болно, гэхдээ энэ бол олон шийдлийн зөвхөн нэг нь гэдгийг санаарай.

1: Хоосон тохиргооны хувьд бид энэ төсөлд хэрэгтэй 2 номын санг оруулсан болно. Stepper ба Servo. Оруулсан номын санг ашиглах нь таныг stepper болон servo моторын талаар дэлгэрэнгүй мэдээлэл авахаас авардаг.

#оруулах

#оруулах

const int stepsPerRevolution = 200; // үүнийг моторынхоо эргэлт бүрт хийх алхамуудын тоонд тохируулан өөрчилнө үү

// 8-11 хүртэлх зүү дээр stepper номын санг эхлүүлэх:

Stepper XStepper (stepsPerRevolution, 22, 23, 24, 25); Stepper YStepper (stepsPerRevolution, 28, 29, 30, 31); Servo Griper; // servo хянахын тулд servo объект үүсгэх

Gripper нь хоосон тохиргоонд хавсаргасан байх ёстой

void setup () {// цуваа портыг эхлүүлэх: Serial.begin (9600); Griper.attach (9); // 9 -р зүү дээрх servo -ийг servo объект руу хавсаргана

Энэ хэсгийн үлдсэн хэсэг нь зөвхөн Variable болон Constant's -ийн тохиргоо юм.

2: Void Loop дахь хамгийн эхний зүйл бол ашигласан бүх оролтыг хувьсагч руу ачаалах явдал юм. Үүнийг хоёр шалтгаанаар хийдэг. Эхний шалтгаан нь оролтыг уншихын тулд CPU -ийн хүнд даалгавруудыг хязгаарлах явдал юм. Хоёрдахь шалтгаан нь оролтыг нэгээс олон удаа ашиглах тохиолдолд бүх скан хийх явцад ижил утгатай байх болно. Ингэснээр тууштай код бичих нь илүү хялбар болно. Энэ бол PLC програмчлалын маш түгээмэл практик боловч суулгагдсан програмчлалд бас хамаатай.

// ------------------------- RAM-ийн оролт -------------------- Xend = digitalRead (34); Yend = digitalRead (35); Ena = digitalRead (36);

3: Кодын sekvens хэсэгт бид Switch болон case командыг ашиглан sekvens хийсэн. Секвенс хэсэг нь кодын Position хяналтын хэсэгт дохио өгдөг. Энэ хэсгийг өөрийн аппликешнд хялбархан тохируулах эсвэл хуучин байдлаар ашиглах боломжтой.

4: Сервогийн байрлалыг зүгээр л servo liberi хянадаг бөгөөд gripper -ийн if хэллэгийг нээлттэй, хаалттай гэж хэлдэг.

Stepper Control нь арай илүү төвөгтэй юм. Функц нь тогтоосон цэг (гарны очихыг хүссэн байрлал) болон одоогийн байрлалыг харьцуулдаг. Хэрэв одоогийн байрлал нь амраг бол функц нь албан тушаалд нэмэгдэх бөгөөд Stepper liberi функцийг эерэг алхам хийхийг хүсдэг. Өндөр албан тушаалын хувьд эсрэгээрээ байдаг. хэрэв байршил нь тохируулсан цэгийнхтэй ижил байвал XinPos бит өндөр байх ба stepper зогсох болно.

// SP хяналтын X

if (XstepCountXsp, Home биш) {

XstepCount = XstepCount-1; Xstep = -1; XinPos = 0; } if (XstepCount == Xsp) {Xstep = 0; XinPos = 1; }

5: Кодын төгсгөлийг оруулаад моторыг либерийн функцээр удирддаг.

// -------------------- Үр дүн ---------------------- // алхам нэг алхам: XStepper.step (Xstep); // нэг алхам алхам: YStepper.step (Ystep);

Griper.write (GripSp);

Алхам 4: Боловсруулсан

casp6099 - Каспер Хартунг Кристенсен

rasm616d - Расмус Хансен

Зөвлөмж болгож буй: