Isi kandungan:

Arduino PLC 32 I / O + Mesin Negeri + SCADA atau HMI: 8 Langkah
Arduino PLC 32 I / O + Mesin Negeri + SCADA atau HMI: 8 Langkah

Video: Arduino PLC 32 I / O + Mesin Negeri + SCADA atau HMI: 8 Langkah

Video: Arduino PLC 32 I / O + Mesin Negeri + SCADA atau HMI: 8 Langkah
Video: HOW TO MAKE ARDUINO PLC | Arduino PLC 2.0 2024, November
Anonim
Arduino PLC 32 I / O + Mesin Negeri + SCADA atau HMI
Arduino PLC 32 I / O + Mesin Negeri + SCADA atau HMI

Banyak cara untuk memprogram, mengawal dan mengawasi sistem perindustrian dengan arduino.

Langkah 1: Pengenalan

Pengenalan
Pengenalan

Dalam arahan ini saya akan menangani:

2 kaedah untuk memprogram arduino yang dihubungkan dengan sejenis mesin termasuk tombol, suis dan LED

1- Kaedah pertama dengan arduino 1.6.x IDE menggunakan perpustakaan SM (Mesin Negeri)

2-Kaedah kedua menggunakan Yakindu, sebuah projek editor digram negara yang dibuat dengan persekitaran gerhana: anda menarik mesin negara anda, dan ia menghasilkan kod untuk dipindahkan ke papan Arduino.

Bersekutu dengan

2 cara mengawasi mesin dengan menjalankan SCADA atau virtual HMI:

1- di bawah Android 4.4: Unigo Evolution, aplikasi percuma tanpa item kod sahaja untuk diletakkan di skrin dan modbus TCP

2-di bawah Windows 8: projek percuma AdvancedHMI yang memerlukan Visual Studio 2013, tidak ada kod dan item untuk diletakkan di skrin dan modbus TCP

Oleh itu, anda melukis urutan fungsional anda dengan SFC (dalam automasi: Carta Fungsi Berurutan), anda menerjemahkannya dalam rajah keadaan (sangat dekat), anda memprogramkannya (Yakindu atau Arduino SM lib) dan kemudian anda mengawasinya dengan SCADA (Unigo android atau AdvancedHMI Windows).

Langkah 2: Penerangan tentang Papan Sebenar:

Penerangan mengenai Papan Sebenar
Penerangan mengenai Papan Sebenar
Penerangan mengenai Papan Sebenar
Penerangan mengenai Papan Sebenar

Skema:

Saya menggunakan papan Arduino UNO, bukan klon kerana Yakindu tidak dapat menghantar program ke klon mana pun hanya papan UNO dan Mega.

Saya dapat mempunyai 32 I / O digital dengan 2 SPI expander seperti MCP23S17 (2x16 I / O) dan 2 output analog 12 bit (analog sebenar tidak ditapis PWM) dengan 2 SPI DAC seperti MCP4921.

Saya tidak melukis perisai ethernet tetapi anda memerlukannya untuk mengawasi sistem anda: jadi pin 4, 10, 11, 12 dan 13 tidak boleh digunakan untuk perkara lain dan semestinya pin 0 dan 1 untuk RX TX sahaja.

Gambar papan sebenar:

8 butang tekan diperlukan:

  • 4 untuk mod manual: satu untuk cahaya pada setiap LED
  • 1 untuk berhenti kecemasan: jika ditolak, anda berada dalam mod normal, lepaskan: kecemasan
  • 1 untuk mod automatik yang melancarkan lampu berurutan hidup dan mati setiap led, jika dilepaskan: mod manual, untuk mengawal setiap led tanpa urutan
  • 1 untuk RUN dalam mod automatik
  • 1 untuk STOP dalam mod automatik

4 membawa untuk mensimulasikan apa sahaja yang anda mahukan (relay, injap…)

Saya memberikan nama setiap butang dan led yang saya gunakan dalam program.

Langkah 3: Apa Urutan Program? Diagram SFC dan Negeri

Apa Urutan Program? Diagram SFC dan Negeri
Apa Urutan Program? Diagram SFC dan Negeri
Apa Urutan Program? Diagram SFC dan Negeri
Apa Urutan Program? Diagram SFC dan Negeri

Saya membuat SFC yang sangat mudah untuk menerangkan apa yang sepatutnya dilakukan oleh sistem.

3 SFC diperlukan:

  • SFCsecu untuk meneruskan atau mematikan mod kecemasan, itu adalah SFC induk yang melancarkan yang lain
  • Manual automatik SFC yang dilancarkan oleh SFCsecu, anda boleh mencapai mod automatik atau mod manual
  • SFC run stop, scan dan hafazan jika ada yang menolak DCY (RUN) atau FCY (STOP)

SFC ini berjalan dalam semu-multistaking.

Kemudian saya menerjemahkannya dalam rajah keadaan:

  • mesin induk (Kecemasan) melancarkan 2 hamba yang lain
  • hamba untuk mengimbas dan menghafal DCY dan FCY
  • hamba untuk mencapai mod automatik atau manual

Perkara lain: apabila anda menekan DCY, anda boleh menguji output analog dengan pemangkas maya pada skada, apabila anda menekan FCY, output analog jatuh ke 0V.

Gambarajah keadaan membantu anda memprogram arduino.

Langkah 4: Mengaturcara Dengan Arduino IDE 1.6. X

Mengaturcara Dengan Arduino IDE 1.6. X
Mengaturcara Dengan Arduino IDE 1.6. X
Mengaturcara Dengan Arduino IDE 1.6. X
Mengaturcara Dengan Arduino IDE 1.6. X

Saya memberi anda kod untuk menterjemahkan gambar rajah sebelumnya. Saya memerlukan 3 lib tambahan yang saya berikan juga.

Anda juga memerlukan jadual alamat untuk memahami pin yang anda gunakan untuk apa dan modbus mendaftarkan alamat yang sesuai.

Langkah 5: Mengaturcara Dengan YAKINDU

Mengaturcara Dengan YAKINDU
Mengaturcara Dengan YAKINDU
Mengaturcara Dengan YAKINDU
Mengaturcara Dengan YAKINDU
Mengaturcara Dengan YAKINDU
Mengaturcara Dengan YAKINDU

Muat turun pertama projek percuma versi 2.9 (bukan pro) pada:

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

Kemudian ikuti tutorial yang disediakan: terdapat beberapa pengubahsuaian berbanding kali terakhir saya memuat turun program, hanya untuk menyelesaikan nama bahagian yang berlainan dari fail "xxxconnector.cpp".

Gambar: gambar mesin negara, pandangan folder dalam projek dan perpustakaan yang diimport dari arduino, pandangan "xxxconnector.cpp" untuk membuat hubungan antara peralihan / keadaan dan input / output sebenar dari papan atau SCADA.

Saya memberikan anda projek yang anda hanya perlu mengimport di ruang kerja yang anda buat secara automatik.

Juga disediakan: lib yang diperlukan untuk mengimport ke Yakindu dan beberapa perubahan yang perlu dijelaskan dalam tutorial.

Langkah 6: Selia dengan Advanced HMI

Selia dengan LanjutanHMI
Selia dengan LanjutanHMI

Muat turun pertama Visual studio Express 2013 atau lebih di:

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

Kemudian muat turun projek AdvancedHMI di:

sourceforge.net/projects/advancedhmi/?SetF…

Saya memberikan gambar SCADA yang saya lukis (dengan alamat register modbus yang sesuai) dan diprogram tanpa kod, projek diubah suai dan tutorial ringkas.

Langkah 7: Selia dengan Unigo Evolution

Selia Ini Dengan Unigo Evolution
Selia Ini Dengan Unigo Evolution

Anda memerlukan Android devide dengan android 4.4 (kit kat) dan layar 7 inci.

Saya memberikan gambar SCADA yang saya lukiskan (dan alamat register modbus yang sesuai) dan tutorial ringkas untuk menggunakan Unigo, tidak perlu kod, folder yang mengandungi gambar lampu dan butang industri untuk dimasukkan ke dalam folder UniGOPictures yang dibuat di dalaman anda SD oleh aplikasi, dan projek.

Langkah 8: Kesimpulannya

Adalah tugas besar untuk mengumpulkan 2 cara pengaturcaraan yang berbeza dan 2 cara pengawasan yang berbeza. Pada mulanya sukar untuk digunakan untuk setiap kemahiran. Tetapi sekarang ia berfungsi dan setelah difahami, anda kini dapat mengawal sistem yang lebih rumit.

Banyak terima kasih kepada banyak tutorial di seluruh dunia, kepada Archie (AdvancedHMI), RenéB2 (Yakindu) dan Mikael Andersson (Unigo Evolution) dan kepada para pembangun perpustakaan arduino yang membenarkan saya melakukan projek "teknologi-ribut".

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

Selamat mengajar.