ARIES PLC110[M02]-MS4, HMI, OPC at SCADA, o kung gaano karaming Chamomile tea ang kailangan ng isang tao. Bahagi 1

Magandang hapon, mahal na mga mambabasa ng artikulong ito. Sinusulat ko ito sa format ng pagsusuri.

Isang munting babalaGusto kong balaan ka na kung naunawaan mo kaagad ang pinag-uusapan natin mula sa pamagat, ipinapayo ko sa iyo na baguhin ang unang punto (sa totoo lang, ang core ng PLC) sa anumang bagay mula sa kategorya ng presyo nang isang hakbang na mas mataas.
Walang halaga ng pag-iipon ng pera ang nagkakahalaga ng ganoong karaming nerbiyos, sa subjective.

Para sa mga hindi natatakot sa isang maliit na kulay-abo na buhok at ang amplitude ng isang nervous tic, mamaya ay ilalarawan ko nang detalyado kung paano nilikha ang teknolohikal na himalang ito. Ang artikulong ito ay nagbibigay ng maikling pagsusuri ng proyekto na may tiyak na halaga ng kritisismo.

Pinagmulan. Pagbubuo ng problema

Sa totoo lang, nagtatrabaho ako sa isang bureau ng disenyo, at sinusubukan namin ang mga kagamitan sa automation para sa pagsasama sa aming mga pabrika ng turnkey. Kamakailan, dumating ang kagamitan ng OWEN sa bodega at napagpasyahan na mag-assemble ng test bench mula dito:

  • PLC110[M02]-MS4 (executive environment MasterSCADA 4D)
  • Operator panel SP307
  • Universal analog signal input module ΠœΠ’110-224.2А
  • MV110-4TD strain gauge signal input module
  • Module sa pagsukat ng elektrikal MV110-220.3M

Ang istraktura ng system ay pinili sa pagkita ng kaibahan ng mga network ayon sa layunin:

  1. Modbus RTU batay sa RS-485 - komunikasyon sa pagitan ng PLC at mga slave device (mga module, frequency converter, smart sensor, HMI panel SP307), PLC network master.
  2. Modbus TCP batay sa Ethernet - Komunikasyon ng iba't ibang PLC sa isa't isa at sa OPC server
  3. Ang OPC at SCADA system PC server ay magkasabay na isang gateway sa pagitan ng dalawang magkaibang network (Corporate LAN ng enterprise at Modbus TCP network ng mga controllers (dalawang network adapters na may pagruruta ng data gamit ang karaniwang mga tool sa Windows)
  4. Ang corporate LAN ay may access sa Internet sa pamamagitan ng proxy server

Ang pangkalahatang istraktura ng system ay ipinapakita sa larawan sa ibaba:

ARIES PLC110[M02]-MS4, HMI, OPC at SCADA, o kung gaano karaming Chamomile tea ang kailangan ng isang tao. Bahagi 1

Built-in na pag-andar

  • Pagkolekta at pag-redirect ng data mula sa PLC patungo sa OPC server
  • Lokal na kontrol at pagsubaybay sa pamamagitan ng HMI panel
  • Kontrol at pagsubaybay mula sa SCADA sa pamamagitan ng OPC server
  • Kontrol mula sa anumang PC mula sa enterprise LAN at sa pamamagitan ng Internet gamit ang isang SCADA client
  • Pagkonekta ng mga mobile OPC monitor sa pamamagitan ng LAN at Internet
  • Siyempre, pag-archive at pagbuo ng ulat

Parang walang pinalampas. Mayroong pangkalahatang paglalarawan ng system, at ngayon, sa totoo lang, sa paksa (Ilalarawan ko ang mga paraan ng pag-aalis sa mga artikulo na may pagpapatupad ng bawat node):

Mga paghihirap na naranasan

1. Dokumentasyon ng PLC

Ang beta testing ng ipinahayag na PLC sa MastersSCADA 4D core ay ipinahiwatig ng tagagawa noong 2012. Sa kabila ng kahanga-hangang habang-buhay ng konsepto, ang lahat ng mayroon ang developer sa 2019 ay isang programming manual ng 28 (!?) na mga pahina, kung saan mayroong mas kaunti kaysa sa walang kapaki-pakinabang na impormasyon, at ang mga screenshot sa manual ay mula sa MasterSCADA 3D, na medyo nakakatawa sa pagsasaalang-alang na nagbago ang interface.

Ang isang forum thread na may 20 paksa ay aktibong sinusuportahan din ng tatlong adherents at isang sales manager.

2. Arkitektura ng mga module ng PLC

Ito ay isang hiwalay na paksa para sa talakayan. Sa madaling sabi: ang PLC ay nakikipag-ugnayan sa mga module bilang Modbus RTU slave device, na dapat munang i-configure ng utility nang hiwalay sa pamamagitan ng pagkonekta sa bawat isa sa isang PC sa pamamagitan ng RS-485 converter.

Ang mga matalinong lalaki, siyempre, ay malamang na alam kung paano gawin ito nang walang isang converter sa pamamagitan ng isang PLC, sunud-sunod na pagkonekta ng mga module sa network at pagsusulat ng mga kinakailangang rehistro, ngunit ito ay may karanasan at isang malaking halaga ng sakit.

Para sa isang developer na nakakita ng ganitong arkitektura sa unang pagkakataon, hindi ito madaling gamitin.
Gayundin, ang lahat ng mga analog na module ay gustong mabigo para sa hindi kilalang mga kadahilanan, na dinadala sa kanila ang buong RS-485 network sa Terra Incognita, ngunit gusto ko ring pag-usapan ito nang hiwalay, isang buong epiko, siyempre. Ang problema, sa pamamagitan ng paraan, ay 10 taong gulang, ang tagagawa ay tinatawanan ito "Dapat nating aminin na ang mga template ay hindi gumana para sa amin", gayunpaman, ito ang tanging interface para sa pakikipag-usap sa mga module, at ang mga tao, medyo seryoso, ay nagsusulat ng kanilang mga pagpapatupad ng Modbus RTU sa loob ng mahabang panahon.

Samantala, nauubos na ang chamomile tea... Palubog na ang araw

3. IDE MasterSCADA

Hindi namin pag-uusapan ang tungkol sa mga graphical na tool; hindi ko pa nasubukan ang mga ito nang husto, ngunit sasabihin ko kaagad na hindi ko ito nagustuhan.

Pinag-uusapan natin ang pagpapatupad ng pagpapalitan ng data at mga karaniwang wika ng IEC:

Ang mga pisikal na input at output ng controller ay hindi mga pandaigdigang variable at hindi ma-access mula sa anumang bahagi ng programa sa pamamagitan ng pagsulat ng isang alias, halimbawa "DI1". Dapat mong i-drag ito sa bawat programa gamit ang mga handle, isang lokal na variable ang nabuo doon, na nagmamana o naglilipat ng halaga. Yung. ang pinaka kakanyahan ng PLC, sa aking paningin, ay medyo nawala: ang aparato ay dapat na gawing simple ang pagprograma ng lohika ng pagpapatakbo ng mga pisikal na channel sa antas. "Kung na-trigger ang input DI1, i-on ang output DO1"at parang ganito "Input DI1 - Variable LI1 - Variable LO1 - Output DO1", gayundin, dahil sa kamangmangan sa prinsipyo ng IDE na ito, maaari kang makakuha ng isang kasiya-siyang babala na "Imposible ang pag-convert ng Boolean-Boolean" (malamang, ang isa sa mga ito ay isang pointer, ngunit naisip ko sa mga editor ng mga tagalikha, ito ay mas magkatugma) .

Ang mga aklatan ng ST, FBD, SFC na mga wika ay medyo malaki at mayroong isang pagpipilian para sa kadalian ng programming, gayunpaman, ang mga sangkap na ito ay hindi mga function, ngunit ang mga klase kung saan naka-embed ang mga pamamaraan, at pangalawa, karamihan ay walang tulong sa paglalarawan. ang pag-andar at mga uri ng data. Ang pagpupursige ay humantong sa akin sa mga library ng kernel ng CodeSys, kung saan kinuha ang lahat ng mga function na ito, nakatulong ang kanilang tulong.

4. Palitan sa SP307 panel

Medyo isang kawili-wiling kaganapan para sa mga walang lugar na gumugol ng ilang araw.

Ang karaniwang pagsubok sa GUI (HMI o SCADA) para sa akin ay gumawa ng 6 na pagsubok:

  1. Pagbabasa ng Discrete Signal
  2. Pagre-record ng discrete signal
  3. Pagbabasa ng Integer Value
  4. Pagsusulat ng Integer Value
  5. Pagbabasa ng tunay na halaga
  6. Pagsusulat ng tunay na halaga

Alinsunod dito, gumuhit ako ng 6 na primitive na bahagi sa screen at suriin ang bawat isa sa pagkakasunud-sunod
Ang palitan ay ganap na kapareho ng sa mga module, ngunit mula sa isang hiwalay na RS-232/485 PLC port, at, tila, mas matatag. Dahil ito ay isang HMI na alipin, sinulatan ko ito sa pamamagitan ng pagbabago, at binasa ito sa 500ms polling, upang hindi makaligtaan ang mga aksyon ng operator.

Ang unang 4 na puntos ay ganap na nakumpleto, ngunit ang mga puntos 5 at 6 ay nagdulot ng mga problema.

Nagpapadala kami ng data ng uri ng Single Float, ipinapakita ito sa screen at nakikita na ang data ay hindi pareho, kahit na ang lahat ng mga setting ng output (Float, dimensyon 1 register, atbp.) ay tama. Magiging isang kasinungalingan na sabihin na ang precedent ay hindi inilarawan sa dokumentasyon, gayunpaman, subukang hanapin kung alin at kung saan, ito ay nakakatawa mula sa labas.

Pagkatapos ng isang masayang paghahanap sa lahat ng mga setting tungkol sa data mismo at sa pagpapadala nito, Sumulat kami sa teknikal na suporta, ang tugon ay nasa average na 5-6 na araw sa kalendaryo, nagtatrabaho kami ayon sa karaniwang script ng teknikal na suporta "Tingnan kung naka-on ang power - suriin ang bersyon ng software - mangyaring maghintay ng isa pang linggo - Alamin natin ito sa ating sarili ”.

Sa pamamagitan ng paraan, ito ay napagpasyahan sa pamamagitan ng pag-install ng isang tik sa isang ganap na hindi sapat na lugar na may ganap na hindi sapat na lagda.

Sa pag-andar ng screen Ang analog signal input ng "Slider" na format ay hindi kasama, maaari lamang ipasok sa field ng teksto gamit ang mga numero. Ito ay kahanga-hanga lamang, alinman sa isinulat namin ang "Β±" na mga pindutan at ang script mismo, o nagpasok kami ng isang numero mula sa keyboard, at kalimutan ang tungkol sa malambot na kontrol ng ilang drive.

Hindi ko overload ang artikulo, kaya ilalarawan ko ang mga problema sa pinakamataas na antas sa bahagi 2.

Upang ibuod, Nais kong tandaan na mayroon akong sapat na kalayaan at maraming oras upang malutas ang mga problemang ito, na sa unang tingin ay tila nakakatawa, ngunit nagdudulot ng maraming sakit para sa biktima. Sa mga kondisyon ng limitadong oras, kritikal na harapin ang mga ganitong problema.

PS: Ang lahat ng mga theses na ipinakita dito ay subjective, at isang pagtatangka lamang na bigyan ng babala ang hindi handa, at hindi magdiskrimina laban sa mga tagagawa, hinihiling ko sa iyo na kunin ang artikulong ito mula sa puntong ito ng view.

Ang pangalawang bahagi ay narito na: i-click

Pinagmulan: www.habr.com

Magdagdag ng komento