Az automatikus palacktöltő gépeket leggyakrabban az ital- és üdítőital-iparban használják. Ezek a gépek futószalagot használnak, amely gazdaságos és gyors módja a palackok kitöltésének. Leginkább a PLC-ket használják az automatikus palacktöltő gépekhez, de nagyon egyszerű és sokoldalú palackkitöltőt készíthet Arduino segítségével. Programozhatja az Arduino-t, hogy az infravörös vagy ultrahangos szenzor segítségével automatikusan észlelje a palackot, és hagyja, hogy a palackozó feltöltődjön egy ideig a szállítószalag leállításával. Ezután ismét mozgassa az övet és álljon meg, amikor a következő üveget észleli.
Itt tervezünk egy automata palacktöltő gép prototípusát Arduino Uno, szállítószalag, mágnesszelep, IR érzékelő és Stepper motor segítségével. A szalagszalagot egy léptetőmotor hajtja állandó, előre beállított sebességgel. A léptetőmotor addig hajtja az övet, amíg egy IR-érzékelő nem érzékeli az üveg jelenlétét az övön. Az IR érzékelőt külső triggerként használtuk. Tehát amikor az infravörös érzékelő magasra megy, egy ravaszt küld az Arduino-nak, hogy állítsa le a motort és kapcsolja be a mágnesszelepet. Az előre beállított késleltetés már be van írva a palack feltöltési kódjába. Az Arduino a megadott időtartamig bekapcsolva tartja a mágnesszelepet és a léptetőmotort. Ez idő után a mágnesszelep kikapcsolja a töltést, és a szállítószalag elindul, hogy a következő palackot meg lehessen tölteni.
Korábban Arduino-t használtunk mágnesszeleppel, infravörös érzékelővel és léptetőmotorral, így ha többet szeretne megtudni az Arduino ezen komponensekkel való alapvető interfészéről, látogasson el a linkekre.
Szükséges alkatrészek
- Arduino Uno
- Léptetőmotor (Nema17)
- Relé
- Szolenoid szelep
- IR érzékelő
- A4988 motorvezető
- Akkumulátor
Kördiagramm
Az Arduino- t használó automatikus palacktöltő rendszer kapcsolási rajza az alábbiakban látható.
A
A kapcsolási rajz megrajzolásához a Fritzinget használtam. Ebben az áramkörben a mágnesszelep a relé modulon keresztül csatlakozik az Arduino-hoz, és az A4988 meghajtó modult használják a léptető motor vezérléséhez. A Nema17 és A4988 illesztőprogram-modulokkal kapcsolatos további információkért kövesse a Hogyan vezéreljük a Nema17-et Arduino-val és az A4988 oktatóanyagot.
A Relé modul bemeneti tűje az Arduino 7. tűjéhez csatlakozik. Az A4988 modul irány- és lépéscsapjai az Arduino 2 és 4 érintkezõihez vannak csatlakoztatva. Ebben a projektben egy IR szenzort használnak az Arduino külső megszakításaként. Az Arduino Uno-ban a 2. és 3. digitális érintkező a megszakító csap, ezért csatlakoztassa az IR-érzékelő kimeneti csatlakozóját az Arduino harmadik tűjéhez. A mágnesszelepet 24 V-os, a léptetőmotort pedig 12 V-os áramforrás táplálja.
Arduino program az üveg automatikus feltöltéséhez
Az Arduino- t használó automatikus palacktöltő rendszer teljes programját a végén adjuk meg. Itt elmagyarázok néhány fontos sort.
Indítsa el a programot a léptetőmotor-könyvtár hozzáadásával. Innen letöltheti a léptetőmotor könyvtárat.
Ezt követően határozza meg a lépésenkénti fordulatszámot a léptető motorhoz. A NEMA esetében fordulatonként 17 lépés 200.
#include
Adja meg azokat a csapokat, amelyekhez a motor meghajtó moduljának Step and Direction csapjai vannak csatlakoztatva. Mivel a motor a meghajtó modulon keresztül csatlakozik, definiálja a motor interfész típusát Type 1-nek .
Léptető léptető (LÉPÉSEK, 2, 4); #define motorInterfaceType 1
Állítsa be a léptető motor fordulatszámát.
stepper.setSpeed (500);
Határozza meg kimenetként a relé, lépés és irány csapokat
pinMode (relé, OUTPUT); pinMode (4, OUTPUT); pinMode (2, OUTPUT);
Az Arduino külső megszakításának szintaxisa az alábbiakban található:
attachInterrupt (digitalPinToInterrupt (pin), ISR, mód);
Hol:
digitalPinToInterrupt (pin): Meghatározza azt a csapot, amelyhez külső megszakítást csatlakoztatnak. Az Arduino Uno 2. és 3. tűje külső megszakító csapok.
ISR: Ez egy olyan függvény, amelyet akkor hívnak meg, amikor külső megszakítást hívnak.
Mód: A kiváltó átmenet típusa, pl. Zuhanás, emelkedés stb.
Tudjon meg többet az Arduino megszakításokról a link követésével.
Az attachInterrup () függvényben meg van adva, hogy a 3. érintkező a külső megszakító tű, és az IR_detected funkciót hívják meg, amikor az IR érzékelő állapotát LOW-ról HIGH-ra (RISING) változtatja.
attachInterrupt (digitalPinToInterrupt (3), IR_detected, HIGH);
void Az IR_detected () egy ISR függvény, amely akkor működik, amikor az IR érzékelő magasra megy. Tehát amikor az infravörös érzékelő magasra megy, ez a funkció néhány lépéssel működteti a léptetőmotort, majd leállítja a léptetőmotort és bekapcsolja a mágnesszelepet.
void IR_detected () {stepper.step (150); digitalWrite (relé, HIGH); stepper.step (0);
Most végre töltse fel a kódot az Arduino-ra, csatlakoztatva azt a laptophoz. Az alábbi képen bemutatjuk az Arduino-t használó automatikus palacktöltő rendszer prototípusát .
A teljes kód és a bemutató videó az alábbiakban található.