Al_Bundy skrev:
Jag jobbar redan som konsult inom hydraulikbranschen. Jobbar mycket åt Hydac.
Jag jobbar mycket inom experiment, väldigt mycket. Så här gäller det att hitta snabba lösningar till ett bra pris som ska verkligen fungera alla dagar.
Därför valde jag Java. Men Java är inte det snabbaste. Kanske en AVR hjälper mig då, tänkte jag.
Då tänkte jag att om jag använder Java för huvudenheten och AVR som gör det tråkiga jobbet som kräver snabbhet?
Får man fråga vad det är för något du skall styra?
Känns spontant som en motsägelse att använda RPi och hemmaknådade microkontrollerkort och i samma andetag säga "det skall fungera alla dagar" - eftersom det är rörliga saker / hydrualik så lär val av språk vara det minsta problemet - fundera i stället på hur du uppfyller alla tänkbara direktiv som kommer gälla din produkt. När du börjar styra saker som rör sig så kan dina fel i koden leda till ödesdigra konsekvenser. Om en IoT senor spårar ur och skickar knasiga värden "händer" inte så mycket under förutsättning att mottagaren kan hantera dåligt indata, om din styrning spårar ur och tappar bort nödstoppfunktion så dör någon i värsta fall...
Finns en anledning till att riktiga PLC (nej, inte någon mjukvara på en paj) som exvis Siemens S7 kostar en slant.
Jag kommer styra t.ex. hydrauliska ventiler via CAN bus. Då är en STM32 snabbare än en mikrodator som har ett oprativsystem + virtuell maskin installerad + programmet.
Jag vill ha en modul som kan sköta det tråkiga arbetet så jag inte belastar huvudenheten.
PLC används av orsaken att det finns hög support. Vi vet inte hur tillgänglig en Raspberry Pi i framtiden.
Dessutom brukar de flesta PLC system vara beprövade och säkrade, vilket inte en Raspberry Pi är. Så jag använder alltid PLC när jag ska göra något som ska gå dygnet runt.
Men för IoT så använder jag Raspberry. Gillar att ha web server på den som kan styra GPIO pinnarna.
För lite mera snabbare styrningar och regleringar så vill jag använda STM32. Men det får bli i framtiden.
Jag tycker det låter som att du borde köpa standard IO-enheter för CAN-bus, gärna supportade av den PLC som körs.
Snabbare och enklare blir det inte, om allt som ska göras är att styra några ventiler i enstyck/småserier. Jobbar du med Hydacs produkter så gör det då.
Ska du utveckla egen elektronik och mjukvara från grunden, för att sen testa och CE-märka osv osv kollar du nog på åtminstone ett par hundra tusen i omkostnader. Köper du en burk färdig och styr på vanligt sätt med befintlig PLC så sjunker den kostnaden minst en faktor tio.
Måste vara oerhört speciella saker som ska göras, om det inte går att lösa med normala burkar styrda av PLCn.
Men då är det nog också så häftiga grejer att det inte löses av en liten 8bit processor...
En PLC löser in princip allt. Men då kostar det också.
Mina kunder vill oftast ha system som är snabba och billiga på samma gång. Ibland vill dem ha ett internetbaserat system och då ger jag dem en Raspberry Pi eller liknande ARM-enkortsdator som har webbsida och liknande. Jag brukar kalla det för IoT-projekt. Ibland vill mina kunder ha ett mer robust och säkert system som har IP-klassning och support från ett företag. Då får dem aningen TT control eller Beijer Electronics.
Jag har även fått förfrågningar på system som är snabba och billiga. Då duger inte en OS-baserat enkortsdator bra och en OS-baserad Windows CE 6.0 PLC duger inte heller. Jag får helt enkelt bygga ett system med STM32 + C kod.
Beckhoff har Windows i mer eller mindre alla plc'er de tillverkar. De är en tysk välrenommerad tillverkare med en omsättning kring 8 miljarder kr.
Deras system kan väl dock ses som lite annorlunda än Windows i allmänhet då det snarare är så att twincat ger Windows en tidslot för exekvering än tvärt om.
Deterministisk exekvering med 100us cykel från signal läggs på ingång tills reaktion finns på utgång, via buss.
Men rätt bra siffror för att vara plc:
TwinCAT – The extreme fast real-time control software
real-time under Microsoft Windows down to 50 μs cycle time
standard IEC 61131-3 programming in XFC real-time tasks
Standard features of Windows and TwinCAT are XFC-compliant.
EtherCAT – The extreme fast control communication technology
1,000 distributed digital I/Os in 30 μs
Al_Bundy skrev:Jag får helt enkelt bygga ett system med STM32 + C kod.
Hur görs med CE-märkning i dessa fall?
Angående WinCE, det kör vi en del i våra PLC-system (egenutvecklade) på jobbet, det fungerar utmärkt. Det är ju inte PLC-styrkoden som körs under CE, enbart visualisering/HMI och administration.
Men ja, det finns ju fina softPLC som körs under typ Windows 10 också, exempelvis CodeSys. Dessa ska tydligen fungera bra under rätt förutsättningar, men då gör man trix som att köra PLC på en eller flera dedikerade kärnor, i superstabila industri-PC.
CE märkningen brukar inte jag göra. Jag vet att jag borde göra det, men min chef lägger bort det till en annan som endast jobbar med CE märkning. Vi arbetar tillsammans.
Hänger inte riktigt med på vad det är du gör som inte kan hanteras av *en* CPU? Varken hydraulik eller CAN är några speciellt snabba aktörer så det bör ju rimligen inte behövas extremt korta cykeltider - PID reglering har man ju kunnat göra i PLC:er sedan 30 år tillbaka med någon med dagens mått mätt ytterst klen CPU.
Även moderna PLC/DCS system har inte oceaner av hårdvarurresurser utan klarar av jobbet ändå, t.ex har ABB sina 800M controllers vilka användas inom alla typer av processindustri - deras CPU (MPC860) taktar på i mellan 24Mhz och 67MHz men likafullt kan man styra vattenkraftverk, processindustrier, gruvor mm.
SAAB använde MC 68332 i sitt styrsystem Trionic5 som släpptes 1994 och den mäktar med att styra en turbomotor med individuell tändning, joniserande mätning i förbränningsrummet som reglerar motorstyrningen
Tror du kanske skulle ta och granska din kod - rimligen bör vilken "skitprocessor" som helst (oavsett OS eller ej) prestera tillräckligt för att styra det du håller på med - iofs oklart vad det verkligen är du styr mer än hydrualik.
Kan man klara sig med standardprodukter blir det oftast billigare än egentillverkat, även FM har väl greppat detta och köper mer standardprodukter i stället för som tidigare ha ett utvecklingsteam som jobbar med "Fältskyffel mod 99" i flera år medan Fiskars kränger tusentals funktionella skyfflar på närmsta stormarknad till en bråkdel av kostnaden.
Hur går den CE märkningen till? Granskar den personen din kod eller drar dom en rövare och hoppas det går bra ändå?
Al_Bundy skrev:CE märkningen brukar inte jag göra. Jag vet att jag borde göra det, men min chef lägger bort det till en annan som endast jobbar med CE märkning. Vi arbetar tillsammans.