mboost-dp1

Udskifte PLC styring med PC styring - Hvad skal der til?


Gå til bund
Gravatar #1 - plazm
25. maj 2010 17:59
Hej

Jeg sidder muligvis og skal udskifte en PLC med styring via en computer, da argumentet er at det er nemmere(her tror jeg de tænker billigere) at finde en C programmør end det er at finde en PLC programmør, og derfor sidder jeg og prøver at finde ud af hvad der skal til af udstyr, da alle disse input og output muligheder som er på en PLC ikke er på en PC sådan umiddelbart.

Jeg vil derfor gerne høre om der er nogen af jer der ved hvad udstyr som man skal anskaffe sig for at en PC kan styre det samme?
Gravatar #2 - plazm
25. maj 2010 19:21
Nu har jeg forhørt mig lidt forskellige steder, og er blevet lidt klogere, jeg har fået at vide at en Allen Bradley PLC har mulighed for at kommunikere via Ethernet, men kunne ikke rigtigt få svar på, om man på denne så kunne lave nogle rutiner f.eks.

Start Motor
Stop Motor
Motor Status
Tænd Lys
Sluk Lys
Lys Status

som man så kan kalde via forbindelsen og lave resten af styringen i et stykke C program?
Gravatar #3 - reefermadness  
25. maj 2010 21:03
Det kommer vel lidt an på hvad PLC'en laver, Som udagangspunkt kan du bruge parallel portens pins.. dette giver dig vidst nok 8 digital out og 5 digital in.. Disse kan så styre relæer, lamper, steppermotorer mm. (Selvfølgelig med en smule ekstra stumper imellem)

Alternativt kan du bruge en microcontroller som f.eks arduino og så kommunikerer med den gennem en seriel port.. (Arduino har indbygget USB->seriel og er virkelig let at lære at programmere)

(Arduino er desuden baseret på wiring, som er baseret på C++, bare virkelig forsimplet :) .. du kan også vælge at programmere den med AVRC, men det er vidst ikke lige for noobs - læs: mig)


læs mere på: www.arduino.cc

Den koster omkring 250kr tror jeg.

Desuden kan du få et utal af "shields" der udvider funktionaliteten med alt lige fra ethernet til touchscreens mm.)
Gravatar #4 - plazm
25. maj 2010 21:23
Den PLC som jeg skal prøve at udskifte styrer nogle motore som er styret med frekvensmodulatorer(?) og så får den signaler fra et par kontakter
Gravatar #5 - reefermadness  
25. maj 2010 21:29
Aner ikke noget om den form for motorstyring.. men det lyder som om at de skal snakkes til lidt ligesom en servo.. der skal man sende impulser i en hvis længde for at styre den..der må vel være et datasheet der beskriver hvordan den skal snakkes til..
Gravatar #6 - plazm
25. maj 2010 21:50
Det er der helt sikkert, dem får jeg også tilsendt på et tidspunkt, men kan sådan en arduino så bruges til det? Og er den stabil nok? :)
Gravatar #7 - reefermadness  
25. maj 2010 22:23
Ja hvis det bare er pwm kan en arduino sagtens bruges.. ved ikke helt med stabiliteten, men en lettere modificeret version af platformen har da været en tur i rummet hehe..

Men PLC ere er generelt mere stabile/pålidelige/holdbare
Gravatar #8 - Dreadnought
25. maj 2010 22:37
plazm (4) skrev:
frekvensmodulatorer(?)

Kaldet VLT'er i daglig tale. De styres normalt med 4-20mA eller 0-10V input. Nogle kan styres digitalt, men det har jeg ikke excelleret i.
Gravatar #9 - plazm
25. maj 2010 22:41
Hehe, det lyder til at være til at finde ud af, om det bliver sådan en Arduino eller om det bliver en PLC med noget ethernet/andet ved jeg ikke, men det lyder til at jeg sagtens kan komme til at styre mine motore, uanset hvilken løsning jeg vælger.
Gravatar #10 - illishar
26. maj 2010 07:32
Nu kommer det jo an på hvad PLC'en skal styre, men hvis jeg skal beskrive de typer PLC vi bruger, så skal en tilsvarende PC have følgende:

- En håndfuld seriel-stik. Til RS232 og RS485
- CANBus
- Ethernet
- USB (til noget service-interface)
- OS alá uClinux

Derudover så skal du kunne skrive kernel space kode til *nix'en.
Gravatar #11 - Niversen
29. maj 2010 07:10
tror i alle tilfælde vil en plc være bedre til opgaven...
desuden er det jo bare et spørgsmål om at finde en plc hvor du kan kompile et c program på istedet for kun ladder...

ideen er jo at sætte en plc til denne styring og så programmere den fra en pc...

1. det er billigere med plc
2. det er mere stabilt med plc
3. det fylder mindre med en plc
4. der er allerede lavet grej til at forbinde til relæer osv...
5. det tager en halv time at forstå hvordan ladder programmer er struktureret så kan ikke se hvad problemet er..? hvis du kan C kan du hurtigt lære ladder...
Gravatar #12 - onetreehell
29. maj 2010 10:50
illishar (10) skrev:
Derudover så skal du kunne skrive kernel space kode til *nix'en.
Correct me if im wrong, men hvis du vælger linux, skal du vist udgive din kernelspace kode i en gpl-kompatibel licens. Ellers er der også *BSD, der ikke har sådan nogle krav (svjh)
Gravatar #13 - D_V
29. maj 2010 12:45
#12

Svjv. Så kommer det an på hvordan du laver din kernelspace kode, hvis du ændrer i selve kernel skal du vist udgive den, men er det dynamisk modul som du loader med modprobe, så er det ikke nødvendigt.. mener det er den måde nvidia gør med deres drivere.
Gravatar #14 - arne_v
29. maj 2010 14:33
#13

Ikke helt.

En driver er linket med OS.

Det NVidia gør at de levere to dele:
- en open source del som linker med OS men exposer et OS uafhængigt API
- en close source del som bruger det OS uafhængige API

Linux mener at det er OK licensmæssigt, så det accepteres.

Hvorvidt Stallman mener at det er i overensstemmelse med GPL har ikke nogen praktisk betydning.
Gravatar #15 - kasperd
29. maj 2010 17:06
onetreehell (12) skrev:
Correct me if im wrong, men hvis du vælger linux, skal du vist udgive din kernelspace kode i en gpl-kompatibel licens.
Det kommer fuldstændigt an på hvordan man bruger det.

Hvis man som enkeltperson laver ændringer til GPL kode til eget forbrug behøver du ikke dele det med nogen.

Hvis en gruppe af personer i fællesskab laver ændringer til noget kode som de er enige om ikke at dele med nogen udenfor gruppen, så er der ingen personer udenfor gruppen, som kan gøre krav på det.

Om denne gruppe personer er en virksomhed eller noget mindre formelt er underordnet.

Der er nogle grænsetilfælde, hvor du vil være nødt til at spørge en advokat om rådgivning, hvis du vil have et præcist svar. F.eks. hvis en ansat i en virksomhed vælger at tage virksomhedens modifikationer til GPL koden og offentliggøre, er det så noget som virksomheden kan sagsøge medarbejderen for.

Virksomheden vil måske hævde, at de har ophavsret til deres egne modifikationer, og dermed kan nægte medarbejderne at videregive dem. Men at nægte medarbejderne dette vil måske være en overtrædelse af licensen på den oprindelige udgave.

Der hvor mange virksomheder har taget fejl af licensen er i situationen, hvor de udvikler et samlet produkt der består af noget hardware, noget GPL software, samt deres egne modifikationer. Når virksomheden efterfølgende sælger sådan en produkt, så er de forpligtet til at give kunderne et eksemplar af sourcekoden med (eller give en vejledning til hvordan kunderne kan bestille et eksemplar af denne sourcekode uden at virksomheden tjener ekstra på formidling af sourcekoden).

Der er set mange eksempler på virksomheder der ulovligt har solgt routere og TV udstyr med Linux i uden at fortælle køberne om deres rettigheder. Hovedparten af de tilfælde ender med at virksomheden retter sig ind før de bliver sagsøgt.

Hvis en virksomhed aldrig sælger den modificerede kode eller hardware indeholdende den modificerede kode, så overtræder de ikke licensen.
Gravatar #16 - illishar
31. maj 2010 07:18
Niversen (11) skrev:
1. det er billigere med plc
2. det er mere stabilt med plc
3. det fylder mindre med en plc


Det ovenstående er måske en lidt voldsom udtalelse. Vi bruger en del PC'ere, som der koster os ca. 1000,- kr i indkøb (uden kabinet). De fylder ca. det samme som en stor bakke smør (Kærgården) og ligesom PLC'ern så består de af en processor og en clock. (Der er ikke noget teknisk i vejen for, at de ikke skulle være ligeså stabile som PLC'er.)
Gravatar #17 - arne_v
6. jun. 2010 01:57
kasperd (15) skrev:
Hvis en gruppe af personer i fællesskab laver ændringer til noget kode som de er enige om ikke at dele med nogen udenfor gruppen, så er der ingen personer udenfor gruppen, som kan gøre krav på det.


Det er jeg ikke så sikker på.

Det du beskriver lyder mistænkeligt som et tilfælde af:
- en fiktiv GPL licens på papir
- en reel licens som er mundtligt aftalt og som hverken er open source eller valid i forhold til GPL koden

Det kan naturligvis være vanskeligt at dokumentere at der foreligger en mundtlig aftale og at det ikke bare er "tilfældigt" at ingen har lyst til at dele koden, hvilket naturligvis er legalt.
Gravatar #18 - kasperd
6. jun. 2010 12:11
arne_v (17) skrev:
Det kan naturligvis være vanskeligt at dokumentere at der foreligger en mundtlig aftale og at det ikke bare er "tilfældigt" at ingen har lyst til at dele koden, hvilket naturligvis er legalt.
Du har selvfølgelig ret i, at hvis der foreligger en egentlig aftale, så er det nok en overtrædelse af licensen. Men man kan jo sagtens være enige uden nødvendigvis at have indgået en aftale, f.eks. hvis man fra start af har haft den samme holdning. Det er, som du også selv påpeger, meget svært at trække en grænse imellem situationen hvor personerne er enige uden at have indgået en aftale, og situationen hvor der er indgået en mundtlig aftale. Det er ikke engang sikkert at personerne selv er klar over om de har en aftale eller ej.

I sådan en situation tror jeg det juridisk vil ende med at forholde sig som om der ingen aftale havde været. Altså, de har ikke overtrådt GPL licensen, og hvis en af parterne vælger at dele det med resten af verden, så har vedkommende ikke brudt nogen aftale med de andre.
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login