Inleiding tot programmeerbare logische controllers (PLC's) - 💡 Fix My Ideas

Inleiding tot programmeerbare logische controllers (PLC's)

Inleiding tot programmeerbare logische controllers (PLC's)


Auteur: Ethan Holmes, 2019

Deze grote zwarte doos met eraan aangesloten draden is een PLC, die digitale IO behandelt als een gigantische Arduino.

Wat is een programmeerbare logische controller of PLC?

Als je een computer hebt gebruikt en je hebt een Arduino, Raspberry Pi of een ander aantal microcontrollers gebruikt, zou je kunnen denken dat een computer gebaseerd op de fysieke wereld een relatief nieuw concept is. Een digitale ingang veroorzaakt een soort voorwaardelijke logica om iets te laten knipperen, je robot om te bewegen, een signaal dat moet worden verzonden of een aantal andere dingen.

Dit soort logica is eigenlijk al geruime tijd gaande in de industrie. In 1968 stelde een man genaamd Richard E. Morley de Modular Digital Controller (MODICON) voor aan een autofabrikant. Deze MODICON, of programmeerbare logische controller (PLC), werd gebruikt om gecompliceerde relais te vervangen door virtueel programmeerbare relais, waardoor machineveranderingen veel sneller en sneller in de industrie kunnen plaatsvinden.

Dit werd later de commerciële MODICON 084, wat ertoe leidde dat veel meer fabrikanten hun eigen versie maakten. Hier is een artikel over de geschiedenis van de PLC als je meer achtergrondinformatie wilt.

Hoe programmeer je er een?

Computers en microcontrollers die u misschien kent, gebruiken een getypte programmeertaal om ze hun taken te laten uitvoeren. Je zou kunnen aannemen, zoals ik deed toen ik voor het eerst op deze manier leerde programmeren, dat een PLC iets soortgelijks gebruikt, zoals C, BASIC of Python. Het doet dit niet (althans niet in de meest eenvoudige vorm); in plaats daarvan gebruikt het iets dat 'ladderlogica' wordt genoemd.

Deze ladderlogica ziet er precies zo uit als het klinkt, met een ladderachtig scherm met tekens als "X1" met een normaal open contact dat is verbonden met een uitgang die is gelabeld als, zeg "Y0" aan het einde ervan. Deze ladder "sporten" zijn opgehangen tussen twee rails die elektrisch vermogen vertegenwoordigen. Dus een elektricien met een achtergrond in het opzetten van logische relaiscircuits zou in theorie deze code kunnen lezen zonder aanvullende training.

Om dit verder te illustreren, als je een heel eenvoudig programma zou opzetten waar, als input "X1" aan is, dan output "Y0" aan gaat, zou het als volgt getekend worden:

"Hallo wereld" in ladderlogica

Er zijn verschillende andere manieren om een ​​PLC te programmeren, zoals gestructureerde tekst of sequentiële functiegrafieken (en er zijn veel meer functies dan wat ik hierboven heb genoemd), maar ladderlogica is de meest gebruikte methode uit mijn ervaring.

Wat zijn de voordelen?

In de industrie is het grote voordeel van een PLC met behulp van ladderlogica dat, zoals eerder vermeld, een technicus de code in theorie kan lezen als een elektrisch diagram. Soms kunnen ze toegang hebben om wijzigingen aan te brengen, maar als ze dat niet doen, is er op zijn minst enige schijn van logica voor wat er gebeurt met niet-programmeurs.

Het andere grote voordeel is dat ze extreem robuust zijn. De meeste hebben invoer- / uitvoerkaarten die afzonderlijk van de processor zelf kunnen worden veranderd, en dat heb ik gedaan nooit gezien de processor zelf faalt waar ik de leiding over had. OK, falen op zichzelf is nauwkeuriger; Ik heb er eentje doodgeschoten, maar dat was zeker geen fout van hemzelf.

Als je iets voor je gebruik of een soort prototype maakt (zoals de meeste Makers zijn), verwacht je dat je in zekere mate met je elektronica moet knoeien. Als je een machine ontwerpt die ervoor zorgt dat je voor miljoenen dollars per jaar voor het bedrijf werkt, wil je absoluut niet dat er elektrische problemen in de weg zitten. Vermenigvuldig dit met alle machines in uw fabriek (tientallen of honderden PLC's) en u wilt er echt niet elke dag naar kijken.

Een mooi paneel, maar zou dit echt passen op je robot?

Waarom gebruiken makers ze niet meer?

De reden is, naar mijn mening, dat PLC's niet meer in thuisprojecten worden gebruikt, kosten. Een volledige PLC met invoer, uitvoer en een willekeurig aantal andere kaarten (bijvoorbeeld Ethernet) kan gemakkelijk duizenden dollars kosten. Voeg nog een paar duizend toe voor een HMI (touchscreen-interface voor menselijke machines) en in veel gevallen meer geld voor de programmeersoftware, en je hebt iets dat goed is voor de meeste budgetten van Maker.

Bovendien kan grootte een belemmering vormen voor het implementeren van dit type regeling. Zelfs de meeste kleine PLC's zijn veel groter dan een Arduino-bord. Dit is over het algemeen geen probleem in de industrie, maar het werkt niet goed voor een robot die enkele centimeters meet in elke dimensie.

Hoe kan ik over Hen leren?

Ik ben een werktuigbouwkundige en heb veel ervaring met PLC-programmering. Ik heb een dozijn apparaten uit het niets geprogrammeerd en nog veel meer problemen opgelost. Hoewel ik wat programmeerervaring had toen ik begon, was ladderlogica absoluut niet vreemd voor mij om mee te beginnen. Van praten met elektrotechnici in de industrie, ze hebben in het algemeen ook geen opleiding over deze specifieke programmeerstijl.

Dat gezegd hebbende, als u op een dag productiemachines in een technische rol wilt programmeren, zult u het hoogstwaarschijnlijk op het werk leren. Hiervoor is een goede stage een uitstekend ding om te hebben. Ik heb ongelooflijk veel geleerd tijdens mijn "co-op" semesters over elektronica en mechanische dingen die me helpen interessante dingen te maken tot op de dag van vandaag.

Aan de andere kant, als ik thuis een project aan het doen ben, zal ik waarschijnlijk nog steeds een soort "Maker-klasse" -bord gebruiken. Maar voor iets als Battlebots, waar duurzaamheid de koning is, zou ik voor een PLC kunnen kiezen als mijn budget groot genoeg was.

Bonusvraag, aan welk type PLC moest ik denken toen ik de ladder met X1 en Y1 diagramde?



U Bent Wellicht Geïnteresseerd Zijn

Auto's zonder stuurprogramma's

Auto's zonder stuurprogramma's


De MakeShift-uitdaging: red een havik!

De MakeShift-uitdaging: red een havik!


Circuito.io helpt beginners elektronische projecten samen te stellen

Circuito.io helpt beginners elektronische projecten samen te stellen


Automatiseer je Coral Reef-tank met Raspberry Pi

Automatiseer je Coral Reef-tank met Raspberry Pi






Recente Berichten