![UCL - Încorporat - Alegeți și plasați: 4 pași UCL - Încorporat - Alegeți și plasați: 4 pași](https://i.howwhatproduce.com/images/005/image-12531-23-j.webp)
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-23 15:04
![UCL - Încorporat - Alegeți și plasați UCL - Încorporat - Alegeți și plasați](https://i.howwhatproduce.com/images/005/image-12531-24-j.webp)
Această instrucțiune va merge totuși pe modul în care este făcută o unitate 2D pick and place și cum să o codați.
Pasul 1: Compunete
![Compunete Compunete](https://i.howwhatproduce.com/images/005/image-12531-25-j.webp)
1x Adrio Mega
2 motoare pas cu pas (am folosit motor pas cu pas JLB, model 17H1352-P4130)
2x Modulul plăcii controlerului de acționare a motorului pas cu pas L298N Dual H Bridge DC pentru Arduino
1x servomotor (nu avem speck pe acesta)
3x rezistențe de 10k ohm
2x bumbacuri din nailon
1x sursa de alimentare 12v
Niște lemn pentru cadru
Fire
Pasul 2: Construcție
![Constructie Constructie](https://i.howwhatproduce.com/images/005/image-12531-26-j.webp)
![Constructie Constructie](https://i.howwhatproduce.com/images/005/image-12531-27-j.webp)
![Constructie Constructie](https://i.howwhatproduce.com/images/005/image-12531-28-j.webp)
Primul lucru în timpul construcției a fost să decidă dimensiunea și forma mashine-ului
Mai întâi construim lemnul de bază. Ne-am construit cadrul de alegere și plasare de 50cm pe 25cm pe 30cm. Totul, cu excepția cadrului, podului și brațului de ridicare, a fost fabricat cu un laser.
Iată un link către toate fișierele
Apoi ne-am dorit sistemul de scripete. Aici am mers cu două inele de 50 mm și un inel de 20 mm. Apoi punem un paracord lângă 20mm cu niște lipici. După care am strâns cele două inele de 50 mm de ambele părți ale inelului de 20 mm.
20mm
50mm
Apoi, trebuie să proiectăm un ghidaj pentru braț. Aici am făcut două fețe și o placă din spate.
Care apoi a fost lipit sub formă de U. Apoi am conectat asta la pod.
Placă laterală
Placa din spate
Acum că piesele pentru mișcarea brațului în sus și în jos sunt terminate. Trebuie să-l mutăm înainte și înapoi.
La proiectarea acestui lucru ne-am asigurat că dinții se aliniază unul cu celălalt. Deci ambele elemente au fost create în același loc al proiectului.
Pasul 3: Cod
![Cod Cod](https://i.howwhatproduce.com/images/005/image-12531-29-j.webp)
![Cod Cod](https://i.howwhatproduce.com/images/005/image-12531-30-j.webp)
![Cod Cod](https://i.howwhatproduce.com/images/005/image-12531-31-j.webp)
Programarea este destul de simplă și constă din 5 părți
- Includerea bibliotecilor și configurarea variabilelor pentru utilizare internă și IO
- Încărcați intrările pe Ram
- Sekvens, alegând mișcarea dorită.
- Controlul poziției pas cu pas / servo
- Rezultate pentru lume
Vom explica, în linii mari, fiecare parte, dar amintiți-vă că aceasta este doar una dintre multele soluții.
1: Înainte de configurarea nulă, am inclus cele 2 biblioteci de care avem nevoie pentru acest proiect. Stepper și Servo. Folosind bibliotecile incluse, vă scutește de la învățarea fiecărui detaliu despre motoarele pas cu pas și servo.
#include
#include
const int stepsPerRevolution = 200; // modificați acest lucru pentru a se potrivi cu numărul de pași pe rotație pentru motorul dvs.
// inițializați biblioteca pas cu pas pe pinii 8 până la 11:
Stepper XS Stepper (stepsPerRevolution, 22, 23, 24, 25); Stepper YStepper (stepsPerRevolution, 28, 29, 30, 31); Servo Griper; // creați un obiect servo pentru a controla un servo
Gripper trebuie să se atașeze în configurarea nulă
void setup () {// inițializează portul serial: Serial.begin (9600); Griper.attach (9); // atașează servo pe pinul 9 la obiectul servo
Restul acestei secțiuni este doar configurarea variabilelor și a lui Constant.
2: Primul lucru din bucla Void este să încărcați toate intrările utilizate într-o variabilă. Acest lucru se face din două motive. Primul motiv este limitarea sarcinilor grele ale procesorului de citire a unei intrări. Al doilea motiv, care este cel mai important și mai important, pentru a vă asigura că, dacă o intrare este utilizată de mai multe ori, va avea aceeași valoare pe parcursul întregii scanări. Acest lucru facilitează scrierea unui cod consistent. Aceasta este o practică foarte obișnuită în programarea PLC, dar se aplică și programării încorporate.
// ------------------------- Introducere în RAM -------------------- Xend = digitalRead (34); Yend = digitalRead (35); Ena = digitalRead (36);
3: În partea sekvens a codului, tocmai am făcut un sekvens cu comenzile Switch și case. Partea urmens dă doar semnale părții de control poziție a codului. Această parte poate fi personalizată cu ușurință în aplicația dvs. sau utilizată așa cum este.
4: Poziția servo este doar controlată de servo liberi și o declarație if pentru priză deschisă și închisă.
Controlul Stepper este puțin mai complicat. Funcția compară setpoint-ul (poziția în care doriți să meargă brațul) și poziția curentă. Dacă poziția actuală este îndrăgostită, funcția se adaugă la poziție și cere funcției Stepper liberi să facă un pas pozitiv. Opusul este valabil pentru o poziție de mare. dacă poziția este aceeași cu setpoint-ul, un bit XinPos este așezat și stepper-ul se oprește.
// SP controal X
if (XstepCountXsp și nu Acasă) {
XstepCount = XstepCount-1; Xstep = -1; XinPos = 0; } if (XstepCount == Xsp) {Xstep = 0; XinPos = 1; }
5: Adăugați sfârșitul codului, motoarele sunt controlate cu funcțiile liberi.
// -------------------- Ieșire ---------------------- // pasul cu un pas: XStepper.step (Xstep); // pas un pas: YStepper.step (Ystep);
Griper.write (GripSp);
Pasul 4: Realizat de
casp6099 - Casper Hartung Christensen
rasm616d - Rasmus Hansen
Recomandat:
UCL Embedded - B0B Linefollower: 9 pași
![UCL Embedded - B0B Linefollower: 9 pași UCL Embedded - B0B Linefollower: 9 pași](https://i.howwhatproduce.com/images/002/image-3550-9-j.webp)
UCL Embedded - B0B Linefollower: Acesta este B0B. * B0B este o mașină generică controlată prin radio, care servește temporar la baza unui robot care urmărește linia. La fel de mulți roboți de urmărire a liniei înainte de el, el va face tot posibilul să rămână pe o linie cauzată de o tranziție între podea și ac
UCL - IIoT - Climă interioară 4.0: 8 pași
![UCL - IIoT - Climă interioară 4.0: 8 pași UCL - IIoT - Climă interioară 4.0: 8 pași](https://i.howwhatproduce.com/images/011/image-31002-j.webp)
UCL - IIoT - Indoor-climate 4.0: După ce ați citit și ați lucrat cu acest instructable, veți avea propriul climat interior interior, pe care îl puteți observa online cu ajutorul Node-red. În cazul nostru, am dezvoltat această idee și am prezentat-o într-o casă de tipărire 3D
UCL-IIoT-Drivhus: 5 pași
![UCL-IIoT-Drivhus: 5 pași UCL-IIoT-Drivhus: 5 pași](https://i.howwhatproduce.com/images/001/image-603-37-j.webp)
UCL-IIoT-Drivhus: Scopul acestui proiect a fost de a construi o Garden House folosind Arduino. Prin urmare, cei 3 studenți din grup au decis să facă o seră automată, am decis să facem înregistrarea datelor despre informațiile date de seră, prin Wamp-server, node-re
UCL-IIOT - Sistem de alarmă cu bază de date și nod roșu: 7 pași
![UCL-IIOT - Sistem de alarmă cu bază de date și nod roșu: 7 pași UCL-IIOT - Sistem de alarmă cu bază de date și nod roșu: 7 pași](https://i.howwhatproduce.com/preview/how-to/10438080-ucl-iiot-alarm-system-with-database-and-node-red-7-steps-0.webp)
UCL-IIOT - Sistem de alarmă cu bază de date și nod roșu: Scopul acestei construcții este de a învăța despre conectarea Arduino cu Node-roșu și o bază de date, astfel încât să puteți înregistra date și, de asemenea, să le colectați pentru o utilizare ulterioară. un sistem simplu de alarmă arduino care scoate 5 numere de date, fiecare separat cu un
UCL-IIoT-Strongbox Cu ecran RFID și LCD (Nodered, MySQL): 5 pași
![UCL-IIoT-Strongbox Cu ecran RFID și LCD (Nodered, MySQL): 5 pași UCL-IIoT-Strongbox Cu ecran RFID și LCD (Nodered, MySQL): 5 pași](https://i.howwhatproduce.com/images/003/image-7466-10-j.webp)
UCL-IIoT-Strongbox Cu ecran RFID și LCD (Nodered, MySQL): proiect Arduino cu scaner RFID și LCD. Introducere Pentru a încheia cursul nostru cu microcontrolere, mai precis Arduino Mega pe care l-am folosit. Am fost însărcinați cu realizarea unui proiect care să includă Arduino Mega, altul decât