All streams
Search
Write a publication
Pull to refresh
126
0

Пользователь

Send message
Ок, а что делать многомиллионной армии «обычных людей» для которых даже уровень Ардуино с трудом постижим?
Если у автора была задача возбудить неприязнь к компании «Аквафор», то он с блеском с ней справился. :)
Да, статья интересная, но есть какая-то недосказанность: с одной стороны куча листингов, с другой — нет исходников (что как бы не очень друг с другом согласуется). Sapienti sat, конечно, но всё же…
Я думаю это многим будет интересно. Дело в том, что скетчи для Ардино уже «навязли в зубах» у всех, а простой, компактной, защищённой и расширяемой серверной платформы нет. Если есть желание, то вообще можете сделать нишевое решение и «прославиться» на этом поприще.
Меня бы устроил полный код вашего решения под свободной лицензией. Чтобы можно было его установить на хостинге и поэкспериментировать.
Основной скетч программы

Основной скетч программы это хорошо, но значительно интереснее было бы взглянуть на код «сервера управления» (который на PHP). А то как-то половинчато получилось — опубликована одна половина системы, а другая половина не опубликована.
Горизонтальное выравнивание — чем оно им не угодило? ИМХО, с ним код выглядит куда красивее, как-то структурнее что-ли.


Полностью согласен. Горизонтальное выравнивание приводит код к псевдо-табличному виду и сразу становится видна структура повторяющихся паттернов кода, а вместе с ней и все технические ошибки (вроде пропущенных скобок, неправильных значений и т. п.).

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

А переформатитирование кода при изменении — это очень небольшая цена за те преимущества, которые даёт этот подход.
Интересная штука, если ты линуксоид и тебя не пугают потребление в полампера, отсутствие аналоговых входов и проблемы реального времени. В общем, вещь своеобразная но в каких-то случаях вполне может пригодиться.
Управление виртуальной 3D моделью через микроконтроллер на JavaScript есть в стандартной поставке АМС для десятка платформ от Mega до ESP32. Всё хранится внутри контроллера и никакие сторонние хранилища не нужны. После выключения питания тоже ничего не пропадает.

Причём одна из моделей отображает состояние реальных объектов в реальном же времени.

https://geektimes.ru/post/274326/
В идеале хотелось бы просто купить датчик Xiaomi и использовать его со своим железом и софтом, но такой фокус скорее всего не получится (хотя почему? — это было бы выгодно производителю — армия DIY-щиков во много раз подняла бы продажи датчиков). Но если это невозможно, то всё равно хотелось бы почитать статью про всю эту кухню оборудования Xiaomi и способах стороннего взаимодействия с ней.
Из статьи не совсем понял о взаимодействии с датчиками Xiaomi. Было бы неплохо если бы кто-нибудь написал статью и подробно осветил вопрос как можно прикручивать датчики и прочее оборудование Xiaomi к своим поделкам: теория, протоколы, практические примеры и т. п.
У нас есть Ардуино 1.6.5 и никакие нововведения нам не страшны :) (шутка)
Из вашей статьи я узнал много новых и интересных терминов. Теперь буду знать как это называется по-научному. :)
В АМС нет какого-то отдельного «модуля кооперативной многозадачности» или весь код АМС можно назвать таким «модулем». Более того, в АМС нет даже функции yield() или её подобия. То, что реализовано в АМС можно назвать «чистой кооперативной многозадачностью», когда процессы активируются поочерёдно и добровольно отдают управление.
Просто так это конечно работать не будет и там есть много тонких моментов и «трюков» — код доступен и можно посмотреть что и как реализовано. Но в итоге всё работает как часы — зафиксированы аптаймы во много месяцев чёткой и беспроблемной работы.
Конечно, код для любой платформы можно скачать в разделе загрузок:
https://hi-lab.ru/arduino-mega-server/details/download
В проекте AMS для множества платформ (Mega, Due, 101, M0, ESP8266, ESP32 и т. д.) реализована кооперативная многозадачность, которая позволяет «одновременно» работать десяткам задач, таким как веб-сервер, опрос датчиков и управление актуаторами, приём и передача беспроводных команд nRF24, nooLite и т. п. и в это же время индивидуально управлять положением десятков серв и шаговых моторов — то есть полный фарш и любые прихоти в смысле «многозадачности» на Ардуино. И при этом в веб-интерфейсе стандартного АМС есть индикатор-график в реальном времени показывающий задержки выполнения этой «многозадачности».
Вот примеры работы этой многозадачности в реальных проектах:
https://hi-lab.ru/arduino-mega-server/ams-pro
Ну старина Итан отжигает… Простите, не удержался :)
Ок, но Ардуину мы в обиду не дадим. :)
Если бы у вас в профиле было 20 статей на медицинскую тему, то тогда была бы объективная возможность отличить вас от досужего болтуна. По моим наблюдениям, чем большее пренебрежение к Ардуино высказывает человек, тем меньше у него проектов, статей и реальных дел.

Information

Rating
Does not participate
Registered
Activity