Använder du Java för inbyggda system?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Använder du Java för inbyggda system?

Inlägg av Al_Bundy »

lillahuset skrev:Självklart, C och HTML.
90-talet ringde nyss. :wink:

Jag hade använt mig utav Java Server Faces + PrimeFaces + Tomcat för att göra en hemsida i HTML som dessutom blir snygg och inte...bara en HTML hemsida. Java Server faces är liksom koden som körs på servern och PrimeFaces är det som körs på webben. Tomcat är det som hostar upp hemsidan på nätet.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Använder du Java för inbyggda system?

Inlägg av Al_Bundy »

AndLi skrev:Hade ett företag sagt så hade jag letat upp lämplig PLC/DUC och sålt dem.

När jag själv frågade mig själv om ett system blev det ett hopkok av ett kommersielt väl fungerande styr/reglersystem som styrs via SMS, som sen övervakas av en helt fristående C program i en STM32 som sniffar det första systemets radiotrafik. De sniffade radiopaketen skickar sen STM32an en HTTP GET request via ett 3G modem till en webbserver som stoppar in det i en SQL databas via ett PHP script. Ett annat PHP script presenterar datan för användaren via webben.

Varför måste det finnas en koppling mellan vad jag kodar µC i och vad jag bygger hemsidor i?

Varför använda flera verktyg, när man kan använda ett verktyg som passar till allt? JSF för internet, JavaFX för applikationer, Java JNI för styrning utav ARM's I/O.

Den enda gången jag skulle tänka mig använda C och STM32 är när jag vill ha prestanda och snabbhet. Jag skulle använda mig av PLC i endast syfte att det ska vara robust och tåligt.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Använder du Java för inbyggda system?

Inlägg av lillahuset »

Varför använda flera verktyg, när man kan använda ett verktyg som passar till allt?
Det där är en tanke som har skrattats åt sedan Eldkvarn brann.
USAnerna brukar prata om att "one size fits all" vilket naturligtvis är en grov lögn. Eller en kemikalieinducerad dröm.

Visst C och HTML är helt fel val om man vill ha snygga hemsidor med en massa lull-lull.
Nu gjorde jag ett "proof of concept" med en RPi som visade en handfull värden på en webbsida.
Det var under hundra rader kod om man räknar bort möjligheten att ställa in enheter för mätvärden och namn på givarna.
Ett enkelt hack, till en del baserat på input från forumet, för att visa vad man med enkla medel kunde åstadkomma.
Hade kunden varit lite alertare och behandlat sin kund i Kina på rätt sätt hade det möjligen blivit rätt stort, med min kunds måttstock alltså. Nu bidde det inte ens en tummetott.

Anledningen till att jag programmerar i C är att jag hela mitt yrkesverksamma liv har levt med kravet på att saker får ta högst x millisekunder att utföra. Alltid! Alltid! Alltid! Vet du vad det kallas? Jo, determinism.
Inom signalbehandling brukar determinism vara ett krav. C utan malloc och liknande är ungefär så nära man kommer om man inte vill programmera assembler, vilket man emellanåt blir tvungen/får nöjet att göra.

Java passar bra (eller kanske inte) till sådant som "pratar" med människor. Alla dessa bibliotek som löser alla dina problem har ofta samma egenhet, de ger ett resultat någon gång den närmsta sekunden eller så.

Så i dagens "lull-lull värld" är väl Java en vinnare.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Använder du Java för inbyggda system?

Inlägg av Al_Bundy »

Jag förstår vad du menar. Men om du vill få jobbet snabbt gjort så är nog ett högnivå språk att föredra än ett lågnivå språk, förutsatt att det finns en kompilator för just det högnivåspråket.

Det finns en anledning varför Java och Python börjar mer och mer bli ett språk för vanligt folk. För att dem talar "lull-lull" till folket. C är bra också vid krav på prestanda och optimal snabbhet. Men jag skulle aldrig ens tänka tanken att bygga en hemsida som grundar sig på C och HTML. Ungefär som att använda PHP för grafiska applikationer för iPhone.

Jag rekommenderar Java Server Faces + Primefaces om du vill komma enkelt undan utan några större besvär. Dessutom blir det riktigt gjort också :)

P.S Man bygger inte fula hemsidor. Det går inte.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Använder du Java för inbyggda system?

Inlägg av lillahuset »

Du har naturligtvis rätt när det gäller webbsidor i C och HTML. Men i det här fallet var det ett utmärkt val. Hade det blivit en produkt hade någon annan fått skriva det på "rätt" sätt. Obs, under hundra rader kod. Ett hack alltså.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Använder du Java för inbyggda system?

Inlägg av Al_Bundy »

Jag skulle ändå ha gjort jobbet i Java med tanke på att Java har hög säkerhet och är väldigt robust. Jag jobbar bland annat med att programmera olika styrsystem + hydraulik, men det händer att någon vilsen uppfinnare droppar in och frågar efter ett enkelt system som kan styras via en mobil applikation. Då erbjuder jag Raspberry Pi + Java + Java Server Faces för uppfinnaren bryr sig inte om vad det för språk som används. Så länge jobbet blir gjort.

Jag skulle helst vilja börja med C och STM32 för jag känner att jag kommer ha behov utav styrningar och regleringar som kräver prestanda. Typ CAN Bus styrning skulle jag helst vilja skriva med C.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Använder du Java för inbyggda system?

Inlägg av lillahuset »

Det hade inte varit värt jobbet att försöka få liv i mina Java-kunskaper för ett proof of concept.
Som jag skrev, hade det blivit något hade någon annan fått skriva det i valfritt språk.

Sedan är jag inte så säker på att Java har högre säkerhet och/eller är robustare än C.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Använder du Java för inbyggda system?

Inlägg av Al_Bundy »

Kan du posta C-koden så jag får titta på den så jag kan avgöra hur avancerad den var :) Jag är mest bara nyfiken på att du lyckades skapa hemsidor med C och HTML.

Du kan lättare göra fel i C än i Java då Java så är man befriad mer från alla dessa ständigt fokus på minnet. I java programmerar man bara.
Mr Andersson
Inlägg: 1409
Blev medlem: 29 januari 2011, 21:06:30
Ort: Lapplandet

Re: Använder du Java för inbyggda system?

Inlägg av Mr Andersson »

En snabb nist-sökning på oracle java ger 959 säkerhetshål. Nu är ju långt ifrån alla fortfarande aktiva men det ger ju en liten bild om deras säkerhetstänk.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Använder du Java för inbyggda system?

Inlägg av lillahuset »

Jag har letat lite efter det "slutgiltiga" resultatet men hittar det inte. Bifogad fil beskriver iallafall det mesta.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Använder du Java för inbyggda system?

Inlägg av Al_Bundy »

Motiveringen varför Java anses som säkert har med att java är inget skriptsspråk, vilket PHP, javascript, Python, Ruby osv är, samt att Java är ett enklare språk än C, än fast C är mindre språk.
Programmerar man som en kratta så spelar det ingen roll vilket språk man använder. Det blir skit iallafall.

Det jag tycker är kul med Java är den breda möjligheten att göra så mycket med ett enda språk. :)
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Använder du Java för inbyggda system?

Inlägg av Al_Bundy »

lillahuset skrev:Jag har letat lite efter det "slutgiltiga" resultatet men hittar det inte. Bifogad fil beskriver iallafall det mesta.
Häftigt! Jag kan se att du använder en teknik som "skriver ut HTML till webbläsaren", dvs servlets-teknik :) Oracle erbjuder fortfarande en sådan teknik till sina kunder, framförallt IBM.

Ja. Nu har man lärt sig något nytt. Hur lång tid tog det för dig att skriva denna kod?
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Använder du Java för inbyggda system?

Inlägg av lillahuset »

Med input från forumet gick det väldigt fort. När jag tittar närmare ser jag att sodjans kloka förslag om <LF> i strängarna saknas.
Annars är det ju trivial C. Strulet var HTML-biten med färger och fonter.

Tackar än en gång de som kom med både bra och dåliga förslag i http://elektronikforumet.com/forum/view ... 43&t=84280
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Använder du Java för inbyggda system?

Inlägg av Al_Bundy »

Med med JavaScript så är det inte rent C+HTML. Fusk! :wink:
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Använder du Java för inbyggda system?

Inlägg av lillahuset »

Det var väl inge javascript där? Eller?
Skriv svar