Zelfgemaakte plc. Werkingsprincipe en basisprincipes van PLC-programmering. Ace PLC in huisautomatisering

Programmable Logic Controllers (PLC's) zijn stevig verankerd in de moderne industriële elektronica. Het assortiment PLC's dat momenteel wordt geproduceerd is zo uitgebreid dat het moeilijk is een taak voor te stellen waarvoor geen geschikte PLC zou bestaan. Rijke randapparatuur, krachtige processors, grote hoeveelheden geheugen, de aanwezigheid van uitbreidingsmodules - dit is slechts een korte lijst van de eigenschappen van moderne PLC's.

Er moet echter worden opgemerkt dat onder productieomstandigheden vaak geen enorme rekenkracht vereist is. De meeste machines die bij de productie worden gebruikt, voeren duidelijk gedefinieerde bewerkingen uit en zijn niet universeel. Heel vaak hebben deze machines niet eens een display en worden alle parameters ingesteld met knoppen of schakelaars. Grofweg worden de op deze machines geïnstalleerde PLC's soms gebruikt om een ​​rack te vervangen door starters/relais/eindschakelaars. En er zijn vaak situaties waarin verouderde apparatuur gemaakt met starters wordt vervangen door apparatuur van dezelfde fabrikant met vergelijkbare functionaliteit, maar met behulp van een PLC.

Hoe het ook zij, soms ontstaat de situatie dat PLC’s uitvallen en reparaties alleen mogelijk zijn vanuit de fabrikant. Het simpelweg vervangen van de PLC door exact dezelfde levert immers niets op, aangezien er geen besturingsprogramma is. Het is goed als de fabrikant in zo’n situatie kan helpen. En indien niet? Moet ik een andere PLC nemen en deze zelf programmeren? Maar als je het zelf moet programmeren, waarom heb je dan een PLC nodig? Zou het niet eenvoudiger en goedkoper zijn om een ​​systeem op basis van een microcontroller te programmeren? Zoals hierboven opgemerkt bevat een PLC immers veel redundante functies en rekenmogelijkheden waarvoor je moet betalen.

Het is om de hierboven genoemde redenen dat er een eenvoudig PLC-circuit is ontwikkeld ter vervanging van de defecte KUAX667 PLC op de VS3005 - AMF Reece S 2000 naaimachine, vooral omdat het hier beschouwde circuit was hergebruikt op een andere machine in de meubelproductie. Bij de ontwikkeling van de PLC was het de taak om uit beschikbare onderdelen een zo goedkoop mogelijke schakeling te creëren, met diagnostische mogelijkheden die zelfs rekening hielden met de afwezigheid van een display. Er werd ook besloten om de galvanische isolatie van de ingangscircuits op te geven, aangezien knoppen, eindschakelaars en schakelaars die eenvoudig mechanisch contact maakten als sensoren dienden.

Het ontwerp van het apparaat en het werkingsprincipe zijn vergelijkbaar met de constructie van de meeste industriële PLC's. Er is een centrale microcontroller en er zijn I/O-poorten.

Als basis wordt de microcontroller van het bedrijf PIC12F629 gebruikt. Deze microcontroller werd gekozen op basis van zijn beschikbaarheid en lage kosten. Ingangen en uitgangen worden geïmplementeerd met behulp van schuifregisters. Logischerwijs zijn ze verdeeld in twee groepen van 8 contacten. Gegevensoverdracht vindt plaats in seriële vorm. Het dataoverdrachtprotocol is identiek aan het SPI-protocol, maar is volledig softwarematig geïmplementeerd en is 16-bit. Circuits voor invoergegevens en uitvoergegevens zijn gescheiden. Dit maakt het werk naar mijn mening gemakkelijker te begrijpen en vereenvoudigt de controle. Bovendien maakte dit het mogelijk om eerder geschreven modules te gebruiken voor het ontvangen en verzenden van gegevens naar schuifregisters. Hoe dan ook, deze conclusies zouden ongebruikt blijven, dus waarom de goede dingen verspillen :). Ingangselementen zijn eindschakelaars, knoppen, schakelaars met omschakeling naar een gemeenschappelijke draad. Daarom worden de ingangen geïmplementeerd zonder het gebruik van optocouplers. Dit vermindert uiteraard de betrouwbaarheid van het circuit. Maar zoals de praktijk leert, werkt de PLC stabiel. Bij gebruik van registers 155ИР9 of 555ИР9 hoeven pull-up-weerstanden tot +5 V niet te worden geïnstalleerd (deze optie wordt weergegeven op de onderstaande foto). Bij gebruik van 74HC165-registers zijn pull-up-weerstanden vereist. Van bijzonder belang is de 1.0-ingang. Deze ingang wordt geïmplementeerd met behulp van een optocoupler en een pulsexpander op een 155LA3-chip. In één van de machines genereerde de sensor een +24 Volt-puls met een duur van ongeveer 1 μsec. Omdat de werkelijke ingangsbemonsteringsfrequentie ongeveer 1 kHz bedroeg, bestond het risico dat de puls zou worden gemist. Om dit te elimineren werd een pulsexpander in het circuit geïntroduceerd, waardoor de pulstijd werd verlengd tot ongeveer 0,1 sec. De pulstijd wordt bepaald door de elementen C1, R4. Door de jumpers op het bord te herschikken (de jumpers zijn niet aangegeven op het diagram, ze kunnen worden gevolgd op de printplaat), is het mogelijk om ingang 1.0 te schakelen door de optocoupler te omzeilen, de pulsexpander te omzeilen, of de optocoupler en puls te omzeilen uitbreiding. Dankzij de in de registers ingebouwde triggers, die de ingangsniveaus vastleggen met behulp van het stroboscoopsignaal, wordt mogelijke onzekerheid van de logische “0”- of “1”-niveaus geëlimineerd. Dit, evenals de sequentiële ondervraging van ingangscircuits door de microcontroller, maakte het mogelijk om het ‘stuiterende’ fenomeen dat kenmerkend is voor mechanische sensoren te negeren. De actuatoren zijn wikkelingen van pneumatische kleppen en relais, die via ULN2803-driverchips zijn verbonden met 74HC595-schuifregisters. De stroom wordt geleverd door een gelijkspanningsbron van +24 volt, beschikbaar in de machine voor het voeden van relaiswikkelingen en pneumatische kleppen, via een pulsspanningsstabilisator op LM2576 (chip in een TO-263 opbouwpakket, gelegen aan de foliezijde, de folie dient ook als radiator), ingeschakeld volgens het standaardschema.

De gehele schakeling is gemonteerd op een bord van 100*130 mm. Naast elke voedingschip bevindt zich een condensator met een capaciteit van 0,1 mkF (niet weergegeven in het diagram). Zoals hierboven vermeld, gebruikte het apparaat 555IR9-microcircuits waarvoor geen pull-up-weerstanden nodig zijn. Om de 74HC165 te gebruiken, biedt het bord echter de mogelijkheid om pull-up-weerstanden te installeren, die van 1 tot 10 kOhm kunnen zijn. Als pull-up-weerstanden is het goed om weerstandsassemblages van het type 9A472J te gebruiken (ongebruikte pinnen worden eenvoudigweg afgebeten), die veel werden gebruikt in computers op basis van 286-486-processors.

Het programma voor de microcontroller is geschreven in de PIC Simulator IDE, die een dialect van de BASIC-taal gebruikt. Het gebruik van BASIC maakt het gemakkelijk om programma's te ontwikkelen zonder echt in de architectuur van microcontrollers te duiken. Bovendien heb je op de een of andere manier te maken met implementaties van de BASIC-taal sinds school, en voor de meeste niet-professionele ontwikkelaars veroorzaakt het geen respectvolle angst. Laten we naar het programma kijken en ons concentreren op die plaatsen waar de installatie voor een bepaalde machine direct plaatsvindt.

Het programma is opgenomen in de volledige versie voor de naaimachine. Eerst komt het gedeelte voor het beschrijven van variabelen en symbolen. Bij het herwerken van het programma voor andere apparatuur blijven de regels 7 tot en met 11 ongewijzigd; variabelen voor ontvangen/verzonden gegevens en een servicevariabele worden hier gedeclareerd, en de regels 18 tot en met 28 hebben betrekking op de beschrijving van contacten voor het gegevensontvangst/transmissieprotocol. Vervolgens vindt u in het programma, van regel 50 tot en met 96, een controle op het inschakelen van de “Test”-modus en de implementatie van de testmodus. De "Test"-modus wordt ingeschakeld door een jumper te installeren tussen de GP2-pin (5e pin) en de gemeenschappelijke bus (de "Test"-knop afhankelijk van het circuit) voordat het circuit van stroom wordt voorzien. Wanneer de stroom wordt ingeschakeld, stelt de microcontroller de GP2-pin in als ingang (regel 54), schakelt de pull-up-weerstanden in (afvoert 64,65) en vraagt ​​de status van de GP2-pin op (regel 76). Als de testmodus is ingesteld, begint na het verwijderen van de jumper een eindeloze lus (putten 81-95), waarbij de status van de uitgangen direct afhangt van de status van de ingangen. Door de ingangen opeenvolgend te sluiten, kunnen we dus de werking controleren van de actuatoren die op de uitgangen zijn aangesloten, d.w.z. testapparatuur van sensoren tot actuatoren.

Wanneer de stroom wordt ingeschakeld zonder dat er een jumper is geïnstalleerd, gaat de microcontroller naar het gedeelte van het programma waar de bedrijfsmodus van de machine direct wordt geprogrammeerd (in dit programma zijn dit regels 98-261). Dit deel van het programma wordt als voorbeeld gelaten en omdat het rechtstreeks verband houdt met de apparatuur, zullen we er niet bijzonder over nadenken. Laten we alleen stilstaan ​​bij de algemene werkingsprincipes en routines voor het ontvangen en verzenden van gegevens. In het eenvoudigste geval, wanneer de apparatuur in werking is, worden invoergegevens opgevraagd (de subroutine data_input, de daarin gebruikte subroutine sinchro_input). De status van de ingangen in het programma wordt opgeslagen in de variabelen data_in1 en data_in2. Afhankelijk van het bedieningsalgoritme van de apparatuur analyseert het programma de status van de ingangen, neemt een beslissing om de status van de uitgangen te wijzigen, en deze beslissing wordt vastgelegd in de data data_out1 en data_out2. Hierna worden de gegevens uitgevoerd (de subroutine data_out, de daarin gebruikte subroutine sinchro_out). En zo herhaalt de cyclus zich totdat de stroomvoorziening stopt. Indien nodig is het mogelijk om een ​​programma te organiseren met behulp van microcontroller-interrupts. Dit kan bijvoorbeeld nodig zijn bij het uitvoeren van werkzaamheden aan apparatuur die beperkt is in de tijd.

Bij het programmeren van de microcontroller moet u het configuratiewoord instellen op &h31C4. De transcriptie is te zien in de onderstaande figuur.

P.S. Deze paragraaf is speciaal voor critici. Zoals hierboven opgemerkt, is het programma niet “vanaf nul” geschreven, maar met behulp van kant-en-klare ontwikkelingen. Daarom bevat het programma veel commentaar van eerdere programma's, inclusief commentaar over het gebruik van timer-interrupts. Ik heb ze bewust niet verwijderd, omdat ik geloof dat ze andere mensen kunnen helpen bij het aanpassen van het programma. Als dit programma opnieuw wordt herschreven, is het zeker mogelijk om een ​​optimalere code en een hogere frequentie van polling-invoerelementen te bereiken. Zoals het gezegde luidt: “Er is geen programma dat niet door minstens één team kan worden ingekort.” Maar zelfs in deze vorm neemt het programma minder dan 700 bytes in beslag en werkt de machine, onder controle van dit programma, stabiel.

En tot slot foto's van het bord dat in de machine is gemonteerd en geïnstalleerd.

In het archief:
1. PLC 12F629 - bronbestand en HEX-bestand.
2. Projecteren in .
3. Printplaat

Lijst met radio-elementen

Aanduiding Type Denominatie Hoeveelheid OpmerkingWinkelMijn notitieblok
U1 MK PIC 8-bits

PIC12F629

1 Naar notitieblok
U2, U3 Schuifregister

SN74HC595

2 Naar notitieblok
U4, U5 Schuifregister

SN74HC165

2 Naar notitieblok
U6 Ventiel

SN7400

1 Naar notitieblok
U7 Optokoppelaar

Ik ontwikkel programma's voor programmable logic controllers (PLC's) in industriële geautomatiseerde procesbesturingssystemen (APCS).

Voor degenen die dit woord voor het eerst tegenkomen, zal ik het uitleggen. PLC is een speciale minicomputer die als volgt werkt:
1. Ontvangt discrete (Di) of analoge (Ai) ingangssignalen;
2. Verwerkt deze signalen volgens een door de programmeur gespecificeerd programma;
3. Biedt een stuursignaal via discrete (DO) of analoge (AO) uitgangen.

Discreet - wanneer een signaal slechts 2 toestanden kan hebben: 0 of 1, "ja" of "nee". Er wordt bijvoorbeeld een knop ingedrukt of losgelaten, een gloeilamp wordt in- of uitgeschakeld.
Analoog - wanneer de parameterwaarde afhangt van het niveau van het elektrische signaal. Hoe hoger het signaalniveau (volt of milliampère) van een temperatuursensor, hoe hoger de gemeten temperatuur.

PLC's worden voornamelijk gebruikt in de industrie, werktuigmachines, smart home domoticasystemen, enz.

Uiteraard ben ik vanwege mijn beroep geïnteresseerd in alles wat te maken heeft met PLC's en andere apparatuur die wordt gebruikt in geautomatiseerde procesbesturingssystemen. Op een dag ging ik tijdens het surfen op internet naar de website van het Amerikaanse bedrijf Velocio, dat PLC's uit de Ace-, Branch- en Embeded-serie produceert.

De belangrijkste kenmerken van deze controllers zijn hun kleine formaat, slechts 2,5" x 2,5", 5 volt voeding en een prijs vanaf $ 49 voor een model met 6 discrete ingangen en 6 discrete uitgangen. Ik was vooral onder de indruk van het formaat; ik heb nog nooit zo'n kleine PLC gezien:

De PLC interesseerde mij, ik nam contact op met Velocio en zij stuurden mij een controllermodel Ace 3090v5. Ik wil de PLC en het bredere Habr-publiek hierover kort vertellen. Vooruitkijkend zal ik zeggen dat Velocio PLC's het meest geschikt zijn voor 'slimme huizen' en andere domoticasystemen.

Ik ontving een pakket met een controller rechtstreeks uit Huntsville, Alabama:

Inhoud pakket:
1. Velocio Ace 3090v5 PLC, $ 179
2. DIN-railmontage, $ 5
3. Signaallijnconnectoren (3,4,8-pins, steek 2,5 mm), 6 stuks, $6*3
4. Platte schroevendraaier, blad 1,5 mm, gratis
5. Voedingsconnector (2-pins, steek van 2,5 mm), $ 2
6. USB Am-miniB-kabel, $ 5

De Ace USB-programmeerkabel hoeft niet bij Velocio te worden gekocht, het is een gewone USB Am-miniB-kabel die in elke computerwinkel wordt verkocht. Je kunt ook elders zoeken naar connectoren, maar de DIN-railmontage is uniek en moet samen met de controller worden aangeschaft.

De Ace 3090v5 voldeed aan de verwachtingen; hij is inderdaad erg klein:

Kenmerken:

Naam Velocio Ace 3090v5
Doel PLC voor huis- en industriële automatisering
Aantal DI's 6
Aantal DOEN 18, transistor
AI Hoeveelheid, totaal 7
Aantal AI 16 bits/type 4/ Thermokoppels J, K, T, N;
±0,256 V, ±0,512 V, ±1,024 V, ±2,048 V
Aantal AI 12 bits/type 3/ 0…+5 V
Communicatiepoorten Mini-USB (kan werken via Modbus), RS-232
Protocollen voor gegevensoverdracht Modbus RTU-slave
Gegevensoverdrachtsnelheid, bps 9600, 19200, 38400, 57600
Bevestiging DIN-rail
Voeding 5 V gelijkstroom
Dimensies 63,5x63,5x12,7 mm
Bedrijfstemperatuur -40… 85°С
IP-beschermingsgraad IP65
Programmeeromgeving Velocio vBuilder, gratis
Prijs 179 $

Ontwerp

Ondanks zijn formaat heeft de controller in totaal 31 in- en uitgangen, een RS-232 seriële communicatiepoort en een mini-USB-poort voor het downloaden van programma's en het communiceren met externe apparaten.

Op de voorkant van de behuizing ziet u LED's die het vermogen en de status van afzonderlijke in- en uitgangen aangeven:

Aan de achterkant van de behuizing bevinden zich uitsparingen voor montage van de houder op een DIN-rail:


Op de zijwanden van de behuizing bevinden zich poorten voor het aansluiten van alle signalen via connectoren. Poorten zijn gemarkeerd met de letters A, B, C, D, E, F:


De aders worden aangesloten via COMBICON PTSM-serie connectoren van Phoenix Contact met een pin-raster van 2,5 mm (0,098""):

De draden worden als volgt in de connector gestoken met behulp van de schroevendraaier die bij de PLC is geleverd:

Discrete uitgangen zijn transistor, om de volgende redenen:

  • het relais past sowieso niet in de controllerbehuizing
  • om hoge prestaties te garanderen, bijvoorbeeld bij het aansturen van stappenmotoren
Transistoruitgangen zijn uiteraard niet geschikt voor het schakelen van een 220 V elektrisch netwerk en er moeten tussenrelais achteraan worden geïnstalleerd. U kunt daar modules met tussenrelais kopen bij Velocio, bij aanschaf van een PLC. Of je kunt geld besparen en soortgelijke Chinese borden op eBay kopen, zoals ik deed:

De analoge ingangen (Ai) in de Ace 3090v5 zijn verdeeld in 2 groepen:

  • 3 Ai met gemeenschappelijke aarde in poort A, ingangsbereik 0…5 V
  • 4 Ai-differentieel in poort F, aansluiting van temperatuursensoren (thermokoppels) van het type J, K, T, N, evenals millivoltsignalen
Dus sloot ik een thermokoppel van het type "K" van een Chinese tester aan op de Ai F1-ingang en gaf de temperatuurwaarde weer op de laptop:

Overigens heb ik in dit voorbeeld het thermokoppel in de controller niet gekalibreerd. De temperatuurmetingen kwamen echter overeen met de waarden van de alcoholthermometer, die als mijn controleapparaat fungeerde.

Ace heeft een laag stroomverbruik: 5 V bij max. stroom tot 0,3 A. Dat wil zeggen dat u een 5 volt-oplader voor een mobiele telefoon als voeding kunt gebruiken.

Programmering

Programma-ontwikkeling wordt uitgevoerd via de gratis vBuilder-programmeeromgeving. Het installatiepakket bevat ook een virtuele COM-poortdriver die nodig is om de controller op een computer aan te sluiten:

Het is het beste om vBuilder te leren kennen door videotutorials te bekijken. Er is ook volledige documentatie in het Engels genaamd “vBuilder Manual” van enkele honderden pagina's.

Programma-ontwikkeling is mogelijk in twee grafische talen: Ladder Logic en Flow Chart.

Ladder Logic-taal is een taal die bekend is bij alle PLC-programmeurs en een van de industriële talen is die gestandaardiseerd is volgens IEC 61131-3.
LD is speciaal uitgevonden zodat niet alleen programmeurs, maar ook gewone elektriciens er programma's op konden schrijven. Het programma is in LD en ziet eruit als een elektrisch circuit:

Het is een gemakkelijke taal om te leren en om mee te werken.

Flow Chart-taal is een grafische taal waarin een programma wordt gemaakt in de vorm van stroomdiagrammen:

Veel mensen herinneren zich stroomdiagrammen en de principes van hun constructie uit de tijd van de informatica op school. Ik studeerde bijvoorbeeld in 1999 af van de 11e klas, tijdens de donkere tijden van de post-Sovjet-computermiddeleeuwen. In die tijd verkocht Intel al Pentium-II-processors, Bill Gates verkocht Windows 98 en onze school had Sovjet-Elektronika-computers met zwart-witschermen. Het grootste deel van de les zaten we aan ons bureau en tekenden programma's in onze notitieboekjes met behulp van stroomdiagrammen. Vervolgens hebben we ze vertaald naar BASIC, zijn we bij Elektronika gaan zitten (4 personen per auto) en hebben ze vervolgens in de computer ingevoerd. En op andere scholen waren er helemaal geen computers.

Dus voor beginners is Flow Chart zelfs eenvoudiger dan LD. Tegelijkertijd is het naar mijn mening visueler en kun je complexere programma's maken. Overigens gebruik ik zelfs nu nog vaak blokdiagrammen en werk ik met verschillende PLC's. Als ik een complex algoritme moet doordenken, teken ik eerst stroomdiagrammen op een stuk papier en vertaal ze vervolgens naar een programma in een specifieke taal.

In beide programmeertalen zijn dezelfde programmablokken beschikbaar:

  • vergelijking(<, >,=, enz.)
  • opdracht met de mogelijkheid om formules in te voeren
  • kopiëren
  • balie
  • timer
  • realtime klok
  • digitaal filter
  • encoders lezen
  • stappenmotor aansturing
  • PID-regelaar
  • zachte start/stop
  • schaalvergroting
  • bitgewijze verschuiving en "flip" van een getal
  • statistieken
  • com-poortcontrole om uw eigen protocollen voor gegevensoverdracht te implementeren
  • subroutine oproep
Dezelfde vBulder-downloadpagina wordt gebruikt als “snelle hulp” voor programmablokken. Klik eenvoudig op de pictogrammen van de overeenkomstige vBuilder-blokken aan de rechterkant van de pagina en lees hoe ze werken:

Als Engels echt moeilijk is, komt de Ghrome-browservertaler te hulp: rechtermuisknop -> vertalen naar Russisch. De vertaling is technisch, maar de betekenis zal duidelijk zijn.

Beschikbare programmeeropties:

  • het maken van uw eigen variabelen (tags) van het type bit, unsigned int 8/16 bit, Signed int 16/32 bit, float;
  • matrices maken;
  • creatie van subroutines;
  • Bovendien zijn de subroutines hier objecten van het FB-type, zoals in Step-7 en Codesys;
  • aan elke in-/uitgang en tags kan een adres worden toegewezen voor het verzenden van hun waarden via Modbus;
  • communicatie via Modbus met pc's, aanraakpanelen etc. via Modbus in slave-modus; het is mogelijk om via Modbus gelijktijdig verbinding te maken met 2 masterapparaten;
  • de mogelijkheid om uw eigen protocollen voor gegevensoverdracht te implementeren via RS-232;
  • Stap voor stap debuggen van het programma.

Ace aansluiten op uw computer en touchpads

Voor communicatie met externe apparaten via het netwerk heeft de Ace 3090v5 2 poorten: RS-232 en USB. Beide poorten kunnen gegevens verzenden met behulp van het Modbus RTU-slaveprotocol. Er kunnen tegelijkertijd 2 masterapparaten op Ace worden aangesloten. Bijvoorbeeld een computer via USB, en een touchpanel via RS-232. Voor de besturing vanaf een computer worden speciale programma's zoals SCADA gebruikt, maar je kunt ook een programma in een of andere visuele basis schrijven.

RS-232 is de goede oude COM-poort van een computer. Voorheen werden er muizen op aangesloten. Om de computer op de Ace aan te sluiten, vond ik een oude Komov-muis met een bal, sneed de staart ervan af en verbond deze volgens dit schema met de 3-pins RS-232-connector van de Ace:

Als uw computer geen COM-poort heeft, moet u een USB/RS-232-converter kopen voor ongeveer $ 8.

Opties voor het implementeren van Ace-gegevensuitwisseling met externe apparaten:

  • via het interne Ace-protocol voor communicatie met een computer waarop gratis SCADA vFactory is geïnstalleerd;
  • via het universele Modbus RTU-gegevensoverdrachtprotocol voor communicatie met computers, aanraakpanelen en andere PLC's;
  • volgens een eigen protocol, programmatisch geïmplementeerd in de controller.
Gratis SCADA vFactory werkt alleen met Velocio PLC's, omdat het geen Modbus gebruikt, maar het interne gesloten controllerprotocol. Er is geen documentatie voor vFactory, om het onder de knie te krijgen is één videoles voldoende. Een heel eenvoudige SCADA zonder scripttaal en de mogelijkheid om archieven te onderhouden. De werkbalk is klein:

Maar u kunt snel een werkend programma maken zonder speciale programmeervaardigheden:

Als de mogelijkheden van vFactory niet voldoende zijn, kunt u elke andere SCADA aansluiten via het Modbus RTU-protocol. In de video met het thermokoppel heb ik bijvoorbeeld SCADA Trace Mode 6 Base gebruikt.

Je kunt in Ace je eigen dataoverdrachtprotocol programmeren; hier is een aparte videoles aan gewijd.

Ace PLC in huisautomatisering

Ik denk dat deze controller goed zal presteren in een smart home-systeem. Voordelen van de controller: klein formaat, laag stroomverbruik, voeding vanaf slechts 5 V, veel discrete uitgangen, de mogelijkheid om thermokoppels aan te sluiten, 2 communicatiepoorten met externe apparaten, programmeergemak, een groot aantal verschillende programmablokken.

Als je de Ace-controller leuk vindt, maar 6 afzonderlijke ingangen niet genoeg zijn, kun je de Branch-serie eens nader bekijken - dezelfde Ace, alleen met de mogelijkheid om uitbreidingsmodules aan te sluiten (tot 450 in-/uitgangen). Dit is echter al zonder mij - ik heb voorlopig genoeg te spelen met Ace.

Tags: tags toevoegen

Niet langer alleen maar een zonnesysteemcontroller...

Inschakelen als T2>40C en uit als T2<30.5

Hoewel het hoofddoel van een zelfgemaakte controller is om in zonnesystemen te werken, slagen sommigen er al in om deze te gebruiken voor ketels met vaste brandstoffen. In dit artikel wil ik het hebben over de nieuwe functies van de MEGA CtrlM-firmware, die je voor $ 4,95 kunt kopen door contact met mij op te nemen.

De nieuwe firmware ondersteunt 8 temperatuursensoren (ik zal er binnenkort nog 8 toevoegen) en 8 relaisuitgangen. Maar het meest interessante is dat het nu mogelijk is om je eigen voorwaarden te stellen! Hoe vaak komt het voor dat u de instructies voor een controller aan het lezen bent en dat u nog een kleine functie mist om deze volledig in uw systeem te integreren? Je moet op zoek gaan naar een duurdere controller of een andere kopen.

Mijn controller is flexibeler geworden. Nu kunt u op uw verzoek de werkingslogica van 4 of 8 uitgangen programmeren. Als u een van de standaardschema's gebruikt, zijn de uitgangen daarin al bezet - meestal 1 - 4, en dan kunt u uitgangen 5, 6, 7, 8 programmeren. En als u een schema hebt gekozen Aangepast(aangepast), dan zijn alle 8 uitgangen, van de eerste tot en met de achtste, beschikbaar voor configuratie.

Hoe programmeren?

De controller ondersteunt 3 soorten omstandigheden. Conventioneel is een voorwaarde voor verwarming of koeling. Differentieel - wees niet bang voor dit woord, dit is het gebruikelijke verschil tussen twee temperatuursensoren. Dergelijke omstandigheden dienen om warmte of koude van de ene plaats naar de andere te pompen. En de derde voorwaarde is het blokkeren van de uitgang als de temperatuur een vooraf bepaalde drempel heeft overschreden.

Laten we verder gaan met specifieke voorbeelden. Stel dat je de controller niet wilt gebruiken voor zonnecollectoren, maar om een ​​constante temperatuur in huis te handhaven!

Stel dat u een elektrische of gasboiler heeft en twee verdiepingen met aparte verwarming. Dat wil zeggen, om de eerste verdieping te verwarmen, moet u uitgang P1 inschakelen (dit kan een elektrisch verwarmde vloer zijn, of een pomp die warm water over de vloer drijft of verwarmingsradiatoren), en om de tweede verdieping te verwarmen, moet u schakel uitgang P2 in. Dan zijn de voorwaarden als volgt:

[+]P1: T1 19,8C Aan< 21.0C Off >23,0C [+]P2: T2 19,5C Aan< 20.0C Off >22.0C 19,8C en 19,5C zijn eenvoudigweg de huidige metingen van respectievelijk sensor T1 en T2.

De eerste voorwaarde schakelt uitgang P1 in zodra de temperatuur in de kamer onder de 21 graden daalt, en gaat uit wanneer de kamer of vloer opwarmt tot 23 graden. Op deze manier kunt u voorkomen dat de kamer oververhit raakt - de grootste vijand van besparingen. Er is tenslotte maar één manier om verstandig energiebronnen (geld) te besparen: verbrand ze precies zoveel als je nodig hebt, en niet een beetje meer!

Voor de tweede verdieping is alles vergelijkbaar: uitgang P2 gaat aan als de temperatuur op de tweede verdieping onder de 20 graden daalt, en gaat uit als de vloer opwarmt tot 22 graden. Meestal is op de tweede verdieping (slaapkamer) een lagere temperatuur toegestaan ​​dan op de eerste.

Uiteraard kun je de temperatuur instellen zoals je wilt, maar onthoud: stel de kamertemperatuur net zo hoog in dat jij je prettig voelt. Elke graad stijging betekent een stijging van het energieverbruik met ongeveer 6%. Houd bij het instellen van de temperatuur rekening met het doel van de kamer. Zo is het meestal niet nodig om de slaapkamer of zelden gebruikte ruimtes tot 20 °C te verwarmen. Vaillant

Het diagram laat zien hoe de regelaar een constante temperatuur in huis kan handhaven. Het neemt metingen op van de sensoren T1 en T2 (eerste en tweede verdieping) en sluit of opent tegelijkertijd de batterijen (radiatoren) met behulp van relaisuitgangen P1, P2 die zijn aangesloten op servo's.

Het mooie is dat als je in plaats van de uitgangen P1 en P2 P5 en P6 gebruikt en in plaats van de sensor T2, bijvoorbeeld T5, de controller in staat zal zijn om zonnecollectoren aan te sturen en ook de temperatuur in je huis te monitoren.

Als u de T2-sensor en de P1-uitgang vrijgeeft, die worden gebruikt voor de besturingslogica van de zonnecollector, kunt u zowel de temperatuur in het huis regelen als de pomp van uw zonnesysteem aansturen.

Laten we eens kijken naar een complexer voorbeeld, maar zeer vergelijkbaar...