Përmbajtje:
- Hapi 1: Hyrje
- Hapi 2: Përshkrimi i Bordit Real:
- Hapi 3: Çfarë sekuence për të programuar? SFC dhe Diagrami i Shtetit
- Hapi 4: Programimi me Arduino IDE 1.6.X
- Hapi 5: Programimi me YAKINDU
- Hapi 6: Mbikëqyreni atë me AdvancedHMI
- Hapi 7: Mbikëqyreni atë me Unigo Evolution
- Hapi 8: Përfundimi
Video: Arduino PLC 32 I/O+Makinë shtetërore+SCADA ose HMI: 8 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:24
Shumë mënyra për të programuar, kontrolluar dhe mbikëqyrur një sistem industrial me arduino.
Hapi 1: Hyrje
Në këtë udhëzues do të merrem me:
2 metoda për të programuar një arduino të lidhur me një lloj makine duke përfshirë butona, çelësa dhe LED
1- Metoda e parë me arduino 1.6.x IDE duke përdorur bibliotekën SM (State Machine)
2-Metoda e dytë duke përdorur Yakindu, një projekt i redaktorit digram shtetëror i krijuar me mjedis eklipsi: ju vizatoni makinën tuaj të gjendjes dhe ajo gjeneron kodin për t'u transferuar në bordin Arduino.
Në bashkëpunim me
2 mënyra për të mbikëqyrur makinën me një SCADA ose HMI virtuale që funksionon:
1- nën Android 4.4: Unigo Evolution, një aplikacion falas pa artikuj vetëm të koduar për t'u vendosur në një ekran dhe modbus TCP
2-nën Windows 8: një projekt falas AdvancedHMI i cili ka nevojë për Visual Studio 2013, pa kod dhe artikuj për t'u vendosur në një ekran dhe modbus TCP
Kështu që ju vizatoni sekuencat tuaja funksionale me një SFC (në automatizim: Grafiku i Funksioneve Sekuenciale), e përktheni atë në një diagram të gjendjes (shumë më afër), e programoni atë (Yakindu ose Arduino SM lib) dhe më pas e mbikëqyrni me një SCADA (Unigo android ose Windows AdvancedHMI).
Hapi 2: Përshkrimi i Bordit Real:
Skematike:
Kam përdorur një bord Arduino UNO, jo një klon sepse Yakindu nuk mund t'i dërgojë asnjë program asnjë kloni vetëm UNO dhe bordit Mega.
Mund të kem 32 I/O dixhital me 2 zgjerues SPI si MCP23S17 (2x16 I/O) dhe 2 dalje të tjera analoge me 12 bit (analoge e vërtetë jo e filtruar PWM) me 2 SPI DAC si MCP4921.
Unë nuk e kam vizatuar mburojën ethernet, por ju duhet për të mbikëqyrur sistemin tuaj: kështu që kunjat 4, 10, 11, 12 dhe 13 nuk duhet të përdoren për asgjë tjetër dhe padyshim që pin 0 dhe 1 vetëm për RX TX.
Fotografitë e vërteta të tabelës:
8 butona shtypi janë të nevojshëm:
- 4 për modalitetin manual: një për dritën në çdo led
- 1 për ndalimin urgjent: nëse shtyheni, jeni në gjendje normale, lëshoni: urgjencë
- 1 për modalitetin automatik i cili ndizet dhe fiket drita sekuenciale e secilës led, nëse lëshohet: modaliteti manual, për të kontrolluar secilën led pa sekuencë
- 1 për RUN në modalitetin automatik
- 1 për STOP në modalitetin automatik
4 çoi në simulimin e gjithçkaje që dëshironi (stafetë, valvula …)
Unë jap emrin e secilës buton dhe led që kam përdorur në programet.
Hapi 3: Çfarë sekuence për të programuar? SFC dhe Diagrami i Shtetit
Kam bërë një SFC shumë të thjeshtë për të përshkruar se çfarë supozohet të bëjë sistemi.
Nevojiten 3 SFC:
- SFCsecu për të vazhduar ose dalë nga mënyra e urgjencës, është SFC -ja kryesore ajo që lëshon të tjerat
- Manuali automatik SFC i lëshuar nga SFCsecu, mund të arrini në modalitetin automatik ose në modalitetin manual
- Ndalimi i drejtimit të SFC, skanimi dhe memorizimi nëse dikush shtyn DCY (RUN) ose FCY (STOP)
Këto SFC po funksionojnë në pseudo-shumëllojshmëri.
Pastaj i përkthej ato në një diagram shtetëror:
- një makinë kryesore (Emergjente) duke nisur 2 skllevër të tjerë
- një skllav për skanimin dhe memorizimin e DCY dhe FCY
- një skllav për të arritur në modalitetin automatik ose manual
Një gjë tjetër: kur shtyni DCY mund të pilotoni daljen analoge me një makinë prerëse virtuale në një skada, kur shtyni FCY daljet analoge bien në 0V.
Diagrami i gjendjes ju ndihmon të programoni arduino.
Hapi 4: Programimi me Arduino IDE 1.6. X
Unë ju jap kodin për të përkthyer diagramet e mëparshme. Unë kisha nevojë për 3 libs shtesë që ju jap gjithashtu.
Ju gjithashtu do të keni nevojë për tabelën e adresave për të kuptuar se cilat kunja përdorni për çfarë dhe modbus regjistron adresat përkatëse.
Hapi 5: Programimi me YAKINDU
Fillimisht shkarkoni versionin falas të projektit 2.9 (jo pro) në:
www.itemis.com/sq/yakindu/state-machine/
Pastaj ndiqni mësimin e dhënë: ka disa modifikime në krahasim me herën e fundit që kam shkarkuar programin, vetëm që emrat e pjesëve të ndryshme të skedarit "xxxconnector.cpp" të përfundojnë.
Fotografitë: vizatimi i makinës shtetërore, pamja e dosjes në projekt dhe bibliotekat e saj të importuara nga arduino, pamja e "xxxconnector.cpp" për të bërë lidhje midis kalimeve/gjendjeve dhe hyrjeve/daljeve reale të bordit ose të SCADA -ve.
Unë ju jap projektin që thjesht do të duhet të importoni në hapësirën tuaj të punës të krijuar automatikisht.
Gjithashtu ofrohen: librat e nevojshëm për t'u importuar në Yakindu dhe disa ndryshime për të bërë të përshkruara në udhëzues.
Hapi 6: Mbikëqyreni atë me AdvancedHMI
Shkarkoni së pari Visual studio Express 2013 ose më shumë në:
www.microsoft.com/fr-fr/download/details.a…
Pastaj shkarkoni projektin AdvancedHMI në:
sourceforge.net/projects/advancedhmi/?SetF…
Unë ju jap fotografitë e SCADA që kam vizatuar (me adresat përkatëse të regjistrave modbus) dhe të programuar pa kod, projekti i modifikuar dhe një tutorial i shkurtër.
Hapi 7: Mbikëqyreni atë me Unigo Evolution
Keni nevojë për një ndarje android me android 4.4 (kit kat) dhe një ekran 7 inç.
Unë ju jap fotografitë e SCADA që kam vizatuar (dhe adresat përkatëse të modbus regjistron) dhe një udhëzues të shkurtër për të përdorur Unigo, nuk ka nevojë për kod, një dosje e cila përmban fotografi të dritave industriale dhe butona për t'i vendosur në dosjen UniGOPictures të krijuar në brendësinë tuaj SD nga aplikacioni dhe projekti.
Hapi 8: Përfundimi
Ishte një detyrë e madhe për të bashkuar 2 mënyra të ndryshme programimi dhe 2 mënyra të ndryshme mbikëqyrjeje. It'sshtë e vështirë që në fillim të përdoret për aftësitë e secilës mënyrë. Por tani funksionon dhe pasi kuptohet, tani mund të kontrolloni sisteme më të komplikuara.
Shumë falënderime për shumë mësime në mbarë botën, Archie (AdvancedHMI), RenéB2 (Yakindu) dhe Mikael Andersson (Unigo Evolution) dhe zhvilluesit e bibliotekave arduino që më lejojnë të bëj një projekt të tillë "stuhi teknologjie".
Pa eux j'aurais peut être souffert d'un sentiment d'incomplétude infinie pour l'éternité. J'exagère un peu.
Udhëzues të lumtur.