Programmable logic controller (genomgång av sw på s. 6)

Berätta om dina pågående projekt.
Användarvisningsbild
Walle
Moderator
Inlägg: 7701
Blev medlem: 14 december 2004, 10:32:18
Ort: Stockholm

Inlägg av Walle »

Jag har egentligen bara en sak att säga: WOW!!!

Nästan skrämmande seriöst ;)

Keep the good work up!
Användarvisningsbild
baron3d
EF Sponsor
Inlägg: 1353
Blev medlem: 1 oktober 2005, 23:58:43
Ort: Torestorp

Inlägg av baron3d »

Oj det var väldigt genomtänkt! Väldigt avancerat.
pheer
EF Sponsor
Inlägg: 1283
Blev medlem: 16 januari 2005, 18:05:21

Inlägg av pheer »

Skrämmande seriöst måste väl ändå vara ett gott betyg?! :D
bara_hence
Inlägg: 79
Blev medlem: 16 maj 2006, 23:04:41
Ort: Bollnäs

Inlägg av bara_hence »

De har strulat lite med sidan men kopierar man länkadressen öppnar en ny ruta eller flik klistrar in den i adressfältet och enter så kan man ladda ner..
pheer
EF Sponsor
Inlägg: 1283
Blev medlem: 16 januari 2005, 18:05:21

Inlägg av pheer »

Vad pratar du om? Fel tråd?
bara_hence
Inlägg: 79
Blev medlem: 16 maj 2006, 23:04:41
Ort: Bollnäs

Inlägg av bara_hence »

hehe svaret kom kanske lite sent men du sa att du inte lyckades ladda ner något från oscat... Mitt svar var lösningen på detta..
pheer
EF Sponsor
Inlägg: 1283
Blev medlem: 16 januari 2005, 18:05:21

Inlägg av pheer »

Aha då förstår jag. Det funkade bättre som du sa. Det var ett skapligt
bibliotek de byggt upp. Men synd att det är på tyska och inte finns i xml-
format. Men det går nog att göra ett litet program som automatkonverterar
till mitt format. Det får bli en senare uppgift.

Nu har jag lödit ihop och testat do-kortet. Det fungerar kanon! Här kommer
några bilder.

ICn är en ULN2803 som används för drivning av reläerna.
Bild

En anslutningsplint
Bild

Så här ser do-kortet ut i sin helhet. Dioderna indikeringar spänning, 5V från
CPUn via flatkabel och 24V från den externa matningen till relädrivningen.
Reläna är specade till 16A och plintarna är specade till 12A. Men det som
begränsar mest i det här fallet är ledningsbanorna på kretskortet som bara är ca 2,5mm.
Bild

Testning pågår. Jag hade en del problem pyttesmå ledaravbrott på detta
kortet. Utskriften på oh-pappret blev inte perfekt.
Bild

Kortet i sin kapsling,
Bild
Bild
Norpan
Inlägg: 2229
Blev medlem: 12 april 2008, 18:20:27
Ort: Småland

Inlägg av Norpan »

Måla den grön så blir den till förvillelse lik en Phoenix I/O.
pheer
EF Sponsor
Inlägg: 1283
Blev medlem: 16 januari 2005, 18:05:21

Inlägg av pheer »

Här kommer ett par bilder på hela härligheten uppsatt på en din-skena.
Närmast väntar det jullov för detta projekt.

Bild
Bild
TERdON
EF Sponsor
Inlägg: 295
Blev medlem: 15 november 2006, 04:38:29
Ort: Solna/Laholm
Kontakt:

Inlägg av TERdON »

Fortfarande coolt! Och fortfarande fullt upp på jobbet... :(
Användarvisningsbild
Volny
Inlägg: 963
Blev medlem: 10 september 2004, 23:26:05
Ort: Lund

Re: Programmable Logic Controller

Inlägg av Volny »

Fantastiskt!

Har du något move block eller hur sköts det?
pheer
EF Sponsor
Inlägg: 1283
Blev medlem: 16 januari 2005, 18:05:21

Re: Programmable Logic Controller

Inlägg av pheer »

Jag kan dra ett exempel som visar hur det fungerar. Förhoppningsvis kan även de som inte pysslat
plc tidigare hänga med. För att göra det så enkelt som möjligt så visar jag inte hur bibliotek fungerar
och projektet blir att styra en motor med ett villkor.

Till att börja med skapar man ett nytt projekt. Det tomma projektet ser ut så här i projektstrukturen.
Bild

Nästa steg blir att skapa och öppna ett program. Mitt utvecklingsverktyg hanterar endast språket fbd.
FBD är idag det vanligaste programspråket för plc-programmering. Det finns ytterliggare fyra standardspråk
som de flesta större plc har stöd för.
  • ST, strukturerad text, typ som c
  • SFC, sequential function chart, grafiskt liksom fbd, används för att enkelt och lättöverskådligt skapa sekvenser
  • LD, ladder diagram, påminner om reläschemor
  • IL, instruktionslista, typ som assembler
Programeditorn består primärt av två delar. En variabellista upptill och fbd-editorn nertill.
Programeditorn med det tomma progammet ser ut såhär:

Bild

När man klickar på knappen "Inser FB" får man upp ett fönster där man väljer vilket
funktionsblock man vill sätta in. Ett funktionsblock (förkortat fb) motsvarar en funktion
i vanlig c-kod. Det kan, men måste inte ha in- och ut-parametrar. Skillnaden
mot en c-funktion är att ett fb kan ha flera utgångar utan att använda en strukturerad
variabel.

Bild

Efter att ha infogat några block ser det ut såhär:
Bild

För att koppla parametrarna på funktionsblocken måste man deklarera variabler först.
Det kan man göra lokalt(i fbd-editorn) eller globalt. I det här fallet ska vi deklarera globala
variabler. Den uppmärksamma såg att globala variabler finns med i projektstrukturen.

Så här ser det ut med i den globala variabellistan med våra global varaibler:
Bild

Nästa steg blir att knyta ihop funktionsblock och variabler. Genom att högerklicka
på en parameteranslutning för man upp ett fönster där man kan välja bland
alla möjliga variabler, både lokala och globala. Tillgänliga variabler med felaktig
datatyp visas inte.
Bild

När variablerna är knutna ser det ur så här:
Bild

Sista steget i fbd-editorn är att knyta ihop funktionsblock. Det gör man genom
att först markera en parameteranslutning och sedan håller man in ctrl och
klickar på den parameteranslutning man vill ansluta till

Så här ser det ut när alla anslutningar är gjorda. Hur logiken fungerar får
ni klura ut själva.
Bild

Så här långt har vi ett program med lite logik för att styra en motor. Men den
viktiga kopplingen till i/o är inte gjord än. Det gör man såklart i i/o-editorerna.

Editorn för digital ingångar ser ut såhär när vi knutit våra globala variabler:
Bild

Motsvarande koppling görs för de digitala utgångarna:
Bild

Då är all programmering utförd. Innan nedladdning måste man göra en "build"
i huvudfönstret. Förhoppningsvis får man följande resultat:
Bild

Nedladdning generar också lite output i resultatfönstret. Men jag sjäva plcn
undanstoppad för tillfället. Så en hw-genomgång får bli vid ett senare tillfället.
Användarvisningsbild
Jine
Inlägg: 1795
Blev medlem: 21 juli 2004, 20:25:56
Skype: Jim.Nelin
Ort: Trångsund, Stockholm
Kontakt:

Re: Programmable logic controller (genomgång av sw på s. 6)

Inlägg av Jine »

W O W :bravo:
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Programmable logic controller (genomgång av sw på s. 6)

Inlägg av blueint »

Tänkte på PC<->PLC länken, RS232 är begränsat till två noder.. kan bli omständigt när du vill ha fler enheter.
Kul projekt annars :)

Antar att 24V DC är standardspänning i industrin. Måste vara därför alla reläer håller sig där runt..
pheer
EF Sponsor
Inlägg: 1283
Blev medlem: 16 januari 2005, 18:05:21

Re: Programmable logic controller (genomgång av sw på s. 6)

Inlägg av pheer »

Förstår inte riktigt vad du menar. Men detta kanske förklarar:

RS232-anslutningen är endast till för nerladdning av projekt, uppdatering
av firmware och felsökning. När projektet är nerladdat exekverar PLCn koden
helt självständigt utan kommunikation med PCn.

Japp, 24VDC är standard i industrin. Ibland kan man stöta på 48VDC också,
vet inte om det har med anläggninsdelens ålder eller kabellängder att göra.
Skriv svar