Welche Programmiersprache wird für küchengeräten etc. Verwender?

...komplette Frage anzeigen

8 Antworten

Wenn sie nicht wie die meisten "einfachen" Geräte eine einfache Schaltung haben sondern einen richtigen Chip, dann höchstwahrscheinlich in C oder gleich Assembler.

Schau unter "eingebettetes System" ("embedded system"). Nicht jede Kaffeemaschine und jede Lüftungsanlage wird durch solche eingebetteten Computersysteme "intelligenter" gemacht, aber es dürften immer mehr werden.

Über 90% aller heutigen Computer sind eingebettete Systeme, d. h. sie sind in anderen Produkten wie z. B. Haushaltsgeräte, Autos oder Fertigungszellen integriert, um deren Funktionalität, Bedienerfreundlichkeit und Zuverlässigkeit zu erhöhen oder sogar erst zu ermöglichen.

Zitat aus: iti.uni-luebeck.de/index.php?id=eingebettetesysteme

Bevorzugte Programmiersprache ist im Allgemeinen C oder C++, aber auch für Java gibt es Ansätze wie etwa OSGi. Assemblersprache wird dann eingesetzt, wenn zeitkritische oder Gerätetreiber-Funktionen vor allem in Interrupts programmiert werden, oder wenn das Betriebssystem selbst an eine neue Umgebung bzw. CPU angepasst werden muss. [...] In sicherheitskritischen Anwendungen wie zum Beispiel bei Flugsteuerungsrechnern werden auch eher exotische Sprachen wie Ada in eingebetteten Systemen eingesetzt – man muss hier allerdings differenzieren zwischen den zeitkritischen und den sicherheitskritischen Anwendungsebenen, für die ggf. innerhalb des Systems unterschiedliche Anwendungen und Programmiersprachen verantwortlich sein können. Nicht nur in der Automobilindustrie findet häufig die sogenannte modellbasierte Entwicklung mit MATLAB/Simulink oder ASCET Anwendung. Aus den Modellen wird automatisch C-Code generiert, der wiederum für den entsprechenden Zielprozessor compiliert wird.

Zitat aus: http://de.wikipedia.org/wiki/Eingebettetes_System

beim ventilator wird nichts programmiert. einfachsten falls befindet sich am gerät ein schalter der ihn ein und auschaltet. eventuell ein stufenschalter oder ein sogenannter Phasenschnitt Drehzahlregler. da ist nichts dran programmiert. das ist alles pure hardware. das hin und her drehen erfolgt meistens mit einer simplen mechanik oft sogar angetrieben vom hauptmotor.

alles was ein klitzekleines bisschen komplizierter ist, wird heute mit Microcontrolern gemacht. in den allermeisten fällen gehören diese zur PIC oder ATmega Gruppe. beide werden in C+ programmiert....

einfache sachen wie der türöffner würden sich problemlos auch ganz ohne software lösen, logische Verknüpfung verschiedener funktionsrelais. das ist allerdings nach heutigen maßtäben schlicht zu aufwändig und zu teuer...

gl, Anna

C+ gibt es nicht. Höchstens C oder C++. Und kleine Mikrocontroller können in C, Assembler, Basic, Pascal, ... programmiert werden. Da lohnt sich C++ überhaupt nicht (Objektorientierte Programmierung), weil es viel zu speicherintensiv ist.

Es gibt auch logische ICs, da braucht man keine Relais mehr für die Logik, die sind so günstig, das Sie auch noch verwendet werden.

0
@BubbleJoe

c++ abzulehnen aber auf basic und pascal zu verweisen ist auch interessant

0
@dablub

Pascal benötigt in etwa gleich viel Speicher wie ein C-Programm und ist auch in etwa gleich schnell in der Ausführung. Gegen die Verwendung von Pascal auf Microcontrollern spricht daher eigentlich nichts (ist aber in der Tat unüblich oder kommt gar nicht vor).

Es gibt inzwischen Basic-Compiler für Microcontroller. Diese haben aber nicht den Sprachumfang von Basic auf dem PC und können nur deswegen auf den kleinen Controllern funktionieren.

C++ stellt bereits aufgrund der Sprache ansich an die Speichergröße (virtuelle Funktionstabelle, implizites "this"-Argument) wie auch an den CPU-Kern (Aufruf von Funktionen mittels Function-Pointer) weitaus höhere Anforderungen als C oder Pascal.

Bei einem Rechner mit nur 16 Bytes Speicher (wie dem PIC10F200) kann ich mir nicht vorstellen, dass es überhaupt möglich ist, in C++ zu programmieren. Pascal und C-Compiler sind für solche Chips aber noch möglich.

1
@martin7812

O.o hast du tatsächlich recht mit ... ich habe an die extrem großen binarys von delphi am pc gedacht ....

deswegen habe ich das spontan abgelehnt

0

Die kleinen Microchips von Atmel oder Microchip werden oft in deren Assembler-Sprache programmiert, aber es gibt auch Compiler dafür, so dass Basic oder C benutzt werden kann.

Also, solche Geräte sind normalerweiße gar nicht programmiert, sondern über Schaltungen gesteuert. Ansonsten, wenn wirklich ein Mikrocontroller dahintersteckt, dann wird das mit Assambler oder C gemacht.

Wenn du dich für sowas interessierst, schau dir mal den Arduino an. http://www.arduino.cc/

abgesehn davon das nicht alles programmiert wird, stehen dafür eine menge verschiede sprachen zur verfügung ....

von assembler über c bis hin zu javascript geht das alles ....

aktuell sinvoll ist da aber wie schon von dir genannt c ;)

für anfängerprojekte schau dir mal den arduino an !

Bald soll es ja Android in den Geräten geben ... liest man so

In teureren Geräten - z.B. Kaffeevollautomat mit Farbdisplay oder medizinische Gerätschaften: Durchaus möglich.

Android benötigt aber definitiv mehr als 256 Kilobyte an Speicher. In der Automobilindustrie gelten Rechner mit 256 Kilobyte RAM bereits als extrem groß; teilweise sind in neuen Autos auch Controller mit 4 Kilobyte RAM verbaut.

In kleineren Geräten (z.B. einfache TV-Fernbedienung) verwendet man billige Controller mit nur sehr wenig Speicher (teilweise nur 16 Bytes oder sogar weniger). Hier wird eigentlich immer mit Assembler programmiert, selten mit C.

C++, Java oder modellbasierte Entwicklung kann man dort aufgrund des sehr knappen Speichers nicht einsetzen.

0

Da wird dann auch garnichts "programmiert". Das sind dann "einfache" Schaltungen.

:P nen ventilator vll noch ... , ne Kaffeemaschine schon nichtmehr

1
@dablub

Stimmt, jetzt sehe auch grade ne Stellenanzeigen, wo Entwickler mit sehr guten JavaScript-Kenntnissen gesucht werden, um einen Ventilator zu programmieren.

frei nach dem Motto: Wir haben zwar einen Schatten, aber uns ist trotzdem noch heiß...

In der Frage ging es um ganz einfache Funktionen und nicht um einen Vollautomaten, wo dann natürlich ein bisschen mehr drin steckt.

0
@HeinDaddl

ich meine eine simple kaffemaschine, keinen vollautomaten ....

von einem ventilator mit Fernbedienung ganz zu schweigen ...

punkt ist das heutzutage fast alles mit Mikrocontrollern gelöst wird ... es ist einfach günstig zu realisieren ...

0
@dablub

In der Ursprungsfrage ging es noch um eine einfache (mechanische) Funktion. Ventilator mit Fernbedienung ist da wieder ein ganz anderer Schnack. Kaffemaschiene hast Du erst ins Spiel gebracht und bei den ganz einfachen mag ich auch noch nicht glauben, das man da zwingend Mikrokontroller braucht, aber sei es drum.

0
@HeinDaddl

zwingend brauch man den auch nicht, es ist nur einfacher/kostengünstiger einen zu verwenden

0

Was möchtest Du wissen?