Робот-часовщик рисует время маркером на доске
Whiteboard Clock — устройство, которое пишет текущее время маркером на белой доске. Каждые 5 минут оно стирает предыдущее время и пишет новое.
Жёлтая и красная детали в конструкции напечатаны на 3D-принтере (исходный код 3D-моделей для OpenSCAD).
Кроме них, требуется два мотора для управления «рукой» и ещё один мотор для подъёма конструкции на нужную высоту.
Управление устройством осуществляет микроконтроллер PIC16F1454, который получает команды с компьютера по радиосвязи на частоте 433 МГц от другого такого же микроконтроллера. По шине USB идёт только питание. То есть гаджет, в принципе, можно сделать мобильным, если снабдить его автономным источником питания.
По радио передаются маленькие фрагменты текста в кодировке ASCII. Под Linux эти передачи инициируются командами типа "echo 12:34 > /dev/whiteboard". Такая команда напишет на доске время 12:34.
Автор разработал собственный простой протокол для передачи данных, где “1” соответствует сигналу 0,2 мс и 0,1 мс тишины, а “0” — 0,1 мс сигнала и 0,2 мс тишины. Каждое сообщение посылается многократно для коррекции ошибок.
Шрифт определяется простым заданием координат X и Y (код). Они обрабатываются программой C++, которая преобразует координаты в движение маркера.