Satura rādītājs:

Arduino PLC 32 I/O+valsts iekārta+SCADA vai HMI: 8 soļi
Arduino PLC 32 I/O+valsts iekārta+SCADA vai HMI: 8 soļi

Video: Arduino PLC 32 I/O+valsts iekārta+SCADA vai HMI: 8 soļi

Video: Arduino PLC 32 I/O+valsts iekārta+SCADA vai HMI: 8 soļi
Video: ESP32 PLC (MiniPLC-32u) - Communicate with Smakoon HMI (4.3") 2024, Novembris
Anonim
Arduino PLC 32 I/O+valsts iekārta+SCADA vai HMI
Arduino PLC 32 I/O+valsts iekārta+SCADA vai HMI

Daudzi veidi, kā programmēt, kontrolēt un uzraudzīt rūpniecisko sistēmu ar arduino.

1. darbība. Ievads

Ievads
Ievads

Šajā pamācībā es risināšu:

2 metodes, kā programmēt arduino, kas saistīts ar sava veida mašīnu, ieskaitot pogas, slēdžus un gaismas diodes

1- Pirmā metode ar arino 1.6.x IDE, izmantojot SM bibliotēku (State Machine)

2-Otrā metode, izmantojot Yakindu, stāvokļa digramu redaktora projektu, kas izveidots ar aptumsuma vidi: jūs uzzīmējat savu valsts mašīnu, un tā ģenerē kodu, ko pārsūtīt uz Arduino dēli.

Saistībā ar

2 veidi, kā uzraudzīt mašīnu, kad darbojas SCADA vai virtuālais HMI:

1- operētājsistēmā Android 4.4: Unigo Evolution, bezmaksas lietotne bez koda, lai ievietotu ekrānā un modbus TCP

2 zem Windows 8: bezmaksas projekts AdvancedHMI, kuram nepieciešama Visual Studio 2013, bez koda un vienumiem, ko ievietot ekrānā un modbus TCP

Tātad jūs zīmējat savas funkcionālās secības, izmantojot SFC (automatizācijā: secīgu funkciju diagramma), tulkojiet to stāvokļa diagrammā (ļoti tuvāk), ieprogrammējiet (Yakindu vai Arduino SM lib) un pēc tam uzraugiet to ar SCADA (Unigo android vai AdvancedHMI Windows).

2. darbība. Real Board apraksts:

Real Board apraksts
Real Board apraksts
Real Board apraksts
Real Board apraksts

Shēma:

Es izmantoju Arduino UNO plati, nevis klonu, jo Yakindu nevar nosūtīt nevienu programmu nevienam klonam, tikai UNO un Mega plati.

Man varētu būt 32 digitālie I/O ar 2 SPI paplašinātājiem, piemēram, MCP23S17 (2x16 I/O), un vēl 2 analogās 12 bitu izejas (reāls analogs, nevis PWM filtrēts) ar 2 SPI DAC, piemēram, MCP4921.

Es neuzzīmēju Ethernet vairogu, bet jums tas ir nepieciešams, lai uzraudzītu jūsu sistēmu: tāpēc 4., 10., 11., 12. un 13. tapas nedrīkst izmantot nekam citam un acīmredzot tikai 0 un 1 tapu tikai RX TX.

Īstie dēļu attēli:

Nepieciešamas 8 pogas:

  • 4 manuālajam režīmam: viens katras gaismas indikatoram
  • 1 avārijas apstādināšanai: ja tiek nospiests, jūs esat normālā režīmā, atlaidiet: avārijas
  • 1 automātiskajam režīmam, kas ieslēdz un izslēdz katras gaismas diodes secīgu gaismu, ja tā tiek atlaista: manuālais režīms, lai vadītu katru LED bez secības
  • 1 RUN automātiskajā režīmā
  • 1, lai apturētu automātiskajā režīmā

4 lika simulēt visu, ko vēlaties (relejs, vārsts …)

Es dodu katras programmās izmantotās pogas un gaismas diodes nosaukumu.

3. darbība: kādu secību programmēt? SFC un valsts diagramma

Kādu secību programmēt? SFC un valsts diagramma
Kādu secību programmēt? SFC un valsts diagramma
Kādu secību programmēt? SFC un valsts diagramma
Kādu secību programmēt? SFC un valsts diagramma

Es izveidoju ļoti vienkāršu SFC, lai aprakstītu, ko sistēmai vajadzētu darīt.

Nepieciešami 3 SFC:

  • SFCsecu, lai ieslēgtu vai izslēgtu avārijas režīmu, tas ir galvenais SFC, kas palaiž pārējos
  • SFC automātiskā rokasgrāmata, ko uzsāka SFCsecu, jūs varat sasniegt automātisko režīmu vai manuālo režīmu
  • SFC darbības pārtraukšana, skenēšana un iegaumēšana, ja kāds nospiež DCY (RUN) vai FCY (STOP)

Šie SFC darbojas pseido daudzuzdevumos.

Tad es tos tulkoju stāvokļa diagrammā:

  • galvenā mašīna (avārijas), kas palaiž 2 citus vergus
  • vergs DCY un FCY skenēšanai un iegaumēšanai
  • vergu, lai sasniegtu automātisko vai manuālo režīmu

Vēl viena lieta: nospiežot DCY, jūs varat izmēģināt analogo izvadi ar virtuālo trimmeri, kad nospiežat FCY, analogās izejas samazinās līdz 0 V.

Stāvokļa diagramma palīdz ieprogrammēt arduino.

4. darbība. Programmēšana, izmantojot Arduino IDE 1.6. X

Programmēšana ar Arduino IDE 1.6. X
Programmēšana ar Arduino IDE 1.6. X
Programmēšana ar Arduino IDE 1.6. X
Programmēšana ar Arduino IDE 1.6. X

Es dodu jums kodu, lai tulkotu iepriekšējās diagrammas. Man arī vajadzēja 3 papildu libus, kurus es jums dodu.

Jums būs nepieciešama arī adrešu tabula, lai saprastu, kādus tapas kādam nolūkam izmantojat, un modbus reģistrē atbilstošās adreses.

5. darbība: programmēšana, izmantojot YAKINDU

Programmēšana ar YAKINDU
Programmēšana ar YAKINDU
Programmēšana ar YAKINDU
Programmēšana ar YAKINDU
Programmēšana ar YAKINDU
Programmēšana ar YAKINDU

Vispirms lejupielādējiet bezmaksas projekta versiju 2.9 (ne pro) vietnē:

www.itemis.com/en/yakindu/state-machine/

Pēc tam izpildiet komplektā iekļauto apmācību: salīdzinājumā ar pēdējo reizi, kad lejupielādēju programmu, ir veiktas dažas izmaiņas, lai pabeigtu tikai dažādu "xxxconnector.cpp" faila daļu nosaukumus.

Attēli: valsts iekārtas zīmējums, projekta mapes skats un tās importētās bibliotēkas no arduino, skats uz "xxxconnector.cpp", lai izveidotu saikni starp pārejām/stāvokļiem un reālajām ieejām/izejām padomei vai SCADA.

Es dodu jums projektu, kas jums vienkārši būs jāimportē jūsu automātiski izveidotajā darbvietā.

Sniegts arī: nepieciešamie libi, kas jāimportē Yakindu, un dažas izmaiņas, kas aprakstītas apmācībā.

6. darbība: uzraugiet to, izmantojot AdvancedHMI

Uzraugiet to, izmantojot AdvancedHMI
Uzraugiet to, izmantojot AdvancedHMI

Vispirms lejupielādējiet Visual Studio Express 2013 vai vairāk vietnē:

www.microsoft.com/fr-fr/download/details.a…

Pēc tam lejupielādējiet AdvancedHMI projektu vietnē:

sourceforge.net/projects/advancedhmi/?SetF…

Es dodu jums zīmētās SCADA attēlus (ar atbilstošajām modbus reģistru adresēm) un ieprogrammēto bez koda, modificēto projektu un īsu pamācību.

7. darbība: uzraugiet to, izmantojot Unigo Evolution

Uzraugiet to ar Unigo Evolution
Uzraugiet to ar Unigo Evolution

Jums ir nepieciešams android devide ar android 4.4 (komplekts kat) un 7 collu ekrāns.

Es dodu jums zīmētās SCADA attēlus (un atbilstošās modbus reģistra adreses) un īsu pamācību par Unigo lietošanu, nav nepieciešams kods, mapi, kurā ir rūpniecisko lukturu attēli un pogas, kuras ievietot jūsu iekšējā ierīcē izveidotajā mapē UniGOPictures SD pēc lietotnes un projekta.

8. solis. Secinājums

Tas bija milzīgs uzdevums - apkopot 2 dažādus programmēšanas veidus un 2 dažādus uzraudzības veidus. Sākumā ir grūti pierast pie katra veida prasmēm. Bet tagad tas darbojas un reiz saprotams, tagad varat kontrolēt sarežģītākas sistēmas.

Liels paldies daudzām pasaules mēroga apmācībām, Archie (AdvancedHMI), RenéB2 (Yakindu) un Mikael Andersson (Unigo Evolution), kā arī arduino bibliotēku izstrādātājiem, kas ļauj man veikt šādu "tehnoloģiju vētras" projektu.

Sans eux j'aurais peut être souffert d'un sentiment d'incomplétude infinie pour l'éternité. J'exagère un peu.

Laimīgas pamācības.