Как программируются бытовые машины? - PullRequest
145 голосов
/ 11 апреля 2011

Как программируются бытовые машины (не столько компьютеры и мобильные устройства, сколько бытовые приборы, цифровые часы и т. Д.)?Какой код входит в программирование торгового автомата Coca-Cola?Как моя кофеварка принимает запрограммированное время и начинает варить чашку кофе через несколько часов, когда наступает это время?

Есть ли на этих машинах операционные системы, или это нечто большее?основной?Они написаны на ассемблере, C или другом языке?

И я действительно хотел бы найти какой-нибудь ресурс, в котором перечислены эти операционные системы или системы базового кода, возможно, даже с исходным кодом, если это возможно.Если бы кто-нибудь знал о таком ресурсе (поиск ничего не дал для меня), это было бы замечательно.

Ответы [ 13 ]

1 голос
/ 25 ноября 2015

Большинство киосков, регистров, экранов проезда и даже высококлассных кофемашин и микроволновых печей на самом деле работают под управлением Windows XP или Linux, как машины серии «Jura Impressa»; Вы можете использовать SSH и варить кофе.

Вот скрипт github задания cron для кофемашины: https://github.com/NARKOZ/hacker-scripts/blob/master/fucking_coffee.rb

Большинство маршрутизаторов, новые духовки, новые холодильники, автомобили, DVD-плееры, различная электроника, новейшие продукты домашней автоматизации, включая лампочки, используют версию ARM linux или встроенный Linux.

Большинство более дешевых устройств стоимостью до 20 долл., Если они новее, работают на ESP8266 или аналогичном устройстве (могут работать LUA или сервер Node по сниженным ценам за 2 долл. США - безумно дешево)

http://nodemcu.com/index_en.html

Использование FPGA и встроенных систем, таких как 8051, Z80 или других встроенных устройств, таких как PICC, AVR и Arduino, в скором времени будет заменено системами «все в одном» (SoC), такими как ESP8266. Их просто слишком легко программировать, и они представляют собой законченную систему на чипе, на которой установлен собственный веб-сервер; Вы просто включаете их, загружаете свой исходный код, и у вас есть сетевой сервер за 2 доллара.

Я вырос, кодируя PICC и AVR и 8051, и мне грустно видеть, что они идут, но я годами не трогал ничего, кроме ESP8266es, потому что они на 1/10 цены и на порядок проще работать с. Вы можете получить их на платах для разработки с батарейными блоками и разнесенными контактами за 5 долларов на ebay или 10 долларов на adafruit.

1 голос
/ 11 апреля 2011

Если вы ищете информацию общего характера, ищите такие вещи, как «встроенные системы», «soc» (система на кристалле).Я бы сказал, что большая часть этих типов устройств работает на языках низкого уровня, таких как C.

Интересный факт: Java изначально была задумана как решение для программирования встраиваемых систем: http://en.wikipedia.org/wiki/Oak_(programming_language)

0 голосов
/ 01 января 2013

Я слышал от инженера, что пригородные поезда Siemens ходят на 386-м.

...