Итак, начнем с вопроса зачем это нужно. Последнее время, знакомство детей
или просто начинающих начинается со среды программирования Scratch.
Эта среда очень хороша для начала, наглядна, проста. Освоив Скретч вы
можете программировать собственные игры, анимации, а вступив в
Интернет-сообщество - делиться своими творениями с другими. Скретч помогает
научиться творчески мыслить, но оставаясь внутри компьютера это всего лишь
программа.
Первые попытки соединить Скретч с чем-то осязаемым - это, если я не ошибаюсь,
было соединение с наборами Lego WeDo - стартовый набор, позволяющий создавать
некоторые модели и управлять ими с компьютера, подключать к компьютеру внешние
датчики и т.д. Подробнее на
https://scratch.mit.edu/wedo
С появлением платформы Arduino, возникла идея совместить её со средой Скретч.
И эта идея была реализована командой разработчиков S4A
(см. http://http://s4a.cat/ - это их
официальный сайт).
S4A - это модификация Scratch, которая позволяет просто программировать
аппаратную платформу Arduino. Позволяет использовать новые блоки для управления
датчиками и исполнительными механизмами, подключенными к Arduino . Существует
также панель отчетов с сенсорами, подобная PicoBoard.
Основная цель проекта - привлечь людей в мир программирования. Целью также
является обеспечение интерфейса высокого уровня для программистов Arduino с
такими функциональными возможностями, как взаимодействие с набором плат через
пользовательские события.
В S4A доска Arduino представлена специальным видом спрайтов, автоматически
найдет порт USB, на котором подключена плата.
Одновременно можно подключиться к нескольким доскам, просто добавив новый
спрайт Arduino.
S4A обратно совместим с Scratch, поэтому в нём можно открывать проекты Scratch.
Однако вы нельзя делиться своими проектами на веб-сайте Scratch, потому что это
противоречит условиям использования Scratch.
Обмен данными следует протоколу PicoBoard
и требует наличия конкретной программы (скетча), которая будет установлена
на плате Arduino. Также поддерживается поддержка PicoBoard вместе с платой Arduino.
Итак, вот что нам потребуется:
Далее последовательность действий такая: