Мазмұны:
- 1 -қадам: Кіріспе
- 2 -қадам: Нақты тақтаның сипаттамасы:
- 3 -қадам: Бағдарламаның қандай реттілігі? SFC және мемлекеттік диаграмма
- 4 -қадам: Arduino IDE 1.6.X көмегімен бағдарламалау
- 5 -қадам: YAKINDU көмегімен бағдарламалау
- 6 -қадам: AdvancedHMI көмегімен оны қадағалаңыз
- 7 -қадам: Unigo Evolution көмегімен оны қадағалаңыз
- 8 -қадам: Қорытынды
Бейне: Arduino PLC 32 I/O+мемлекеттік машина+SCADA немесе HMI: 8 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Arduino көмегімен өнеркәсіптік жүйені бағдарламалаудың, бақылаудың және бақылаудың көптеген әдістері.
1 -қадам: Кіріспе
Бұл нұсқаулықта мен мыналармен айналысамын:
Машина түріне байланысты arduino бағдарламалаудың екі әдісі, соның ішінде түймелер, қосқыштар және жарық диодтары
1- SM кітапханасын қолданатын arduino 1.6.x IDE бірінші әдісі (Мемлекеттік машина)
2-Тұтылу ортасымен жасалған мемлекеттік диграмма редакторы Yakindu қолданатын екінші әдіс: сіз өзіңіздің мемлекеттік машинаңызды сызасыз және ол Arduino тақтасына беру үшін кодты шығарады.
Байланысты
Машинаны SCADA немесе виртуалды HMI көмегімен басқарудың екі әдісі:
1- Android 4.4 астында: Unigo Evolution, тек экранда орналастыруға болатын элементтері жоқ тегін бағдарлама TCP
2-ші Windows 8-де: Visual Studio 2013 қажет AdvancedHMI ақысыз жобасы, экранға және TCP модуліне орналастыруға код пен элементтер жоқ
Сіз функционалды тізбектеріңізді SFC көмегімен саласыз (автоматтандыруда: жүйелі функциялар диаграммасы), сіз оны күй диаграммасында аударасыз (өте жақын), сіз оны бағдарламалайсыз (Yakindu немесе Arduino SM lib), содан кейін оны SCADA (Unigo) көмегімен бақылайсыз. android немесе AdvancedHMI Windows).
2 -қадам: Нақты тақтаның сипаттамасы:
Схема:
Мен Arduino UNO тақтасын қолдандым, клон емес, өйткені Якинду ешқандай бағдарламаны тек UNO мен Mega тақтасына жібере алмайды.
Менде MCP23S17 (2x16 I/O) сияқты 2 SPI кеңейткіші бар 32 цифрлық енгізу/шығару және MCP4921 сияқты 2 SPI DAC бар тағы 2 аналогты 12 бит шығысы (PWM сүзгісі жоқ).
Мен Ethernet қалқанын тартпадым, бірақ сіздің жүйеңізді бақылау үшін сізге қажет: сондықтан 4, 10, 11, 12 және 13 түйреуіштерді басқа ешнәрсе үшін қолдануға болмайды және тек RX TX үшін 0 мен 1 түйреуіштері анық.
Нақты тақта суреттері:
8 түйме қажет:
- 4 қолмен жұмыс режимі үшін: әр светодиодта бір жарық
- 1 шұғыл тоқтату үшін: егер итерілсе, сіз қалыпты режимдесіз, босатыңыз: төтенше жағдай
- 1 автоматты режим үшін, әрбір светодиодты бірізділікпен қосады және өшіреді, егер босатылса: қолмен жұмыс режимі, әрбір сымды реттіліксіз басқару үшін
- 1 автоматты режимде RUN үшін
- 1 автоматты режимде ТОҚТАТУ үшін
4 қалаған нәрсені модельдеуге әкелді (реле, клапан …)
Мен бағдарламаларда қолданған әр түймешіктер мен жарықдиодтардың атын беремін.
3 -қадам: Бағдарламаның қандай реттілігі? SFC және мемлекеттік диаграмма
Мен жүйенің не істеу керектігін сипаттау үшін өте қарапайым SFC жасадым.
3 SFC қажет:
- SFCsecu төтенше жағдай режимін қосады немесе өшіреді, бұл басқаларды іске қосатын басты SFC
- SFCsecu іске қосқан SFC автоматты нұсқаулығы, сіз автоматты режимге немесе қол режиміне қол жеткізе аласыз
- Егер біреу DCY (RUN) немесе FCY (STOP) түймесін басса, SFC жүгіруді тоқтату, сканерлеу және есте сақтау
Бұл SFC жалған көпмәліметтерде жұмыс істейді.
Содан кейін мен оларды күй диаграммасында аударамын:
- басқа 2 құлды іске қосатын негізгі машина (Төтенше жағдай)
- DCY мен FCY сканерлеуге және есте сақтауға арналған құл
- автоматты немесе қолмен жұмыс режиміне өтетін құл
Тағы бір нәрсе: сіз DCY -ді басқанда, аналогтық шығуды скалада виртуалды тримермен басқара аласыз, FCY -ді басқанда аналогтық шығыс 0В -қа түседі.
Күй диаграммасы arduino бағдарламалауға көмектеседі.
4 -қадам: Arduino IDE 1.6. X көмегімен бағдарламалау
Мен сізге алдыңғы диаграммаларды аудару үшін код беремін. Маған сізге беретін 3 қосымша либ қажет болды.
Сізге қандай түйреуіштерді пайдаланатынын түсіну үшін мекенжай кестесі қажет болады және modbus сәйкес адрестерді тіркейді.
5 -қадам: YAKINDU көмегімен бағдарламалау
Алдымен жобаның 2.9 тегін нұсқасын жүктеңіз (pro емес):
www.itemis.com/kz/yakindu/state-machine/
Содан кейін берілген нұсқаулықты орындаңыз: «xxxconnector.cpp» файлының әр түрлі бөліктерінің атаулары үшін, бағдарламаны соңғы рет жүктегеніммен салыстырғанда, кейбір өзгертулер бар.
Суреттер: мемлекеттік машинаның сызбасы, жобадағы қалтаның көрінісі және оның arduino -дан импортталған кітапханалары, ауысулар/күйлер мен нақты кірістер/шығулар арасында байланыс орнату үшін «xxxconnector.cpp» көрінісі. басқарма немесе SCADAs.
Мен сізге автоматты түрде жасалған жұмыс кеңістігінде импорттау керек болатын жобаны беремін.
Сондай -ақ қамтамасыз етілген: Якиндуға импорттау үшін қажетті libs және оқулықта сипатталған кейбір өзгерістер.
6 -қадам: AdvancedHMI көмегімен оны қадағалаңыз
Алдымен Visual studio Express 2013 немесе одан да көп жүктеу:
www.microsoft.com/fr-fr/download/details.a…
Содан кейін AdvancedHMI жобасын жүктеңіз:
sourceforge.net/projects/advancedhmi/?SetF…
Мен сізге SCADA -ның суреттерін беремін (сәйкес модбустар регистрлер регистрлерімен) және ешқандай бағдарламасыз бағдарламаланған, жоба өзгертілген және қысқаша оқулық.
7 -қадам: Unigo Evolution көмегімен оны қадағалаңыз
Сізге Android 4.4 (жиынтық кат) және 7 дюймдік экраны бар андроид бөлімі қажет.
Мен сізге SCADA суреттерін беремін (және сәйкес модбустар мекенжайларды тіркейді) және Unigo пайдалану үшін қысқаша оқулық, код қажет емес, ішкі шамдарда UniGOPictures қалтасына салу үшін өнеркәсіптік шамдар мен түймелердің суреттері бар қалта. Қолданба мен жоба бойынша SD.
8 -қадам: Қорытынды
Бағдарламалаудың 2 түрлі әдісі мен қадағалаудың 2 түрлі әдісін біріктіру үлкен міндет болды. Әрбір дағдыға үйрену қиын. Бірақ қазір ол жұмыс істейді және бір кездері түсінікті болды, енді сіз күрделі жүйелерді басқара аласыз.
Көптеген әлемдік оқулықтарға, Archie (AdvancedHMI), RenéB2 (Yakindu) және Микаэль Андерссонға (Unigo Evolution) және arduino кітапханаларын әзірлеушілерге, маған осындай «технологиялық шабуыл» жобасын жасауға мүмкіндік беретін үлкен рахмет.
Sans eux j'aurais peut être souffert d'un sentiment d'incomplétude infinie pour l'éternité. J'exagère un peu.
Бақытты нұсқаушылар.