Выбор модели Arduino. Симулятор UnoArduSim и COM-порты.

Deemon
Offline
Зарегистрирован: 07.06.2021
Доброго времени суток!
 
Вопрос новичка к профессионалам. Необходимо собрать в "железе" некую связку: Микроконтроллер который будет по последовательному порту (COM порту) передавать информацию на дисплей Nextion и отображать там числовые параметры. Так как "железо" еще не заказывалось, решил смоделировать это все на ПК (Windows 10). Для этого я использовал программы эмуляции COM портов, тестовый генератор трафика по COM порту и в Nextion Editor начал пытаться обрабатывать числовые параметры. Так как сам являюсь программистом, в системе команд Nextion разобраться было не сложно, но мне показалось (это мое мнение, не точное, может что то и упустил), что мне недостаточно там команд для работы с числами с плавающей точкой и текстовой информацией. В интернете много примеров связки дисплея Nextion с Arduino, причем система команд в Arduino меня полностью устраивает. Для дальнейшего моделирования моей схемы собрал на ПК следующую связку (показана на рисунке):
 
- COM Port Data Emulator & Traffic Generator - эмулирует поступление команд от микроконтроллера (Источник информации)
- KernelPro Vitrual COM Port - создает виртуальные COM порты и мост между ними.
- UnoAdroSim v 2.9.1 - симулятор Arduino, указал модель Mega V3 в настройках, с 2 последовательными портами
- Nextion Editor 1.63.1 - в дебаггере которого, есть возможность проверить прием информации от заданного COM порта.
 
Уже проверил программно связку: Nextion Editor 1.63.1 с СOM Port Data Emulator & Traffic Generator. Все норм.
Также освоил команды приема-передачи по последовательному порту Arduino, как симулятор сойдет.
 
Собственно вопросы:
1. Какую модель Arduino выбрать для покупки? Частота обновления информации 2-5 раз в секунду. Арифметические действия: +, -, /, * , работа с округлением, остатками, работа со строками. Размеры, напряжение питания не принципиальны. Кроме COM порта возможно в дальнейшем будет подключение GPS датчика, акселерометра, гироскопа. И соответственно расчеты будут перенесены на Arduino. Возможно под такие задачи выбрать и что либо другое, а Arduino будет недостаточно?
 
2. Для полноценной проверки всей связки, показанной на рисунке, использую симулятор Android UnoAdroSim v 2.9.1. По описанию (правда корявому русскому, но и в английском тоже ничего не понял) как то можно прописать в настройках COM порт для приема информации. Но где и как, я не понимаю, помогите пожалуйста. Возможно посоветуете вообще другой симулятор, с реализованным подключением к 2-м COM портам.  
 
Буду благодарен любой методической помощи и ссылками. Заранее спасибо!
 
sadman41
Offline
Зарегистрирован: 19.10.2016

Arduino Mega2560. Как отладите прошивку под свой убердевайс - выберете что-нить попроще, с минимальным запасом по Flash/RAM. Ну, или не выберете.

rkit
Offline
Зарегистрирован: 23.11.2016

due

На меньших моделях с плавающей точкой и строками скрип. С акселерометрами тем более.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Deemon пишет:

Вопрос новичка к профессионалам. Необходимо собрать в "железе" некую...
 
 
Это - не вопрос новичка к профессионалам, это - вопрос заказчика к исполнителям.
Если речь идет об обучении новичка (а только в этом помогают во всех остальных разделах), то забудьте на время о конкретной задаче и переключитесь на задачи попроще - те, которые Вам будут рекомендовать.
А если Вы считаете, что задачу должны выбирать Вы, - то в раздел "Ищу исполнителя" за деньги.
 
Цитата:
Так как "железо" еще не заказывалось, решил смоделировать это все на ПК...
 
 
Сэр - любитель секса по телефону?
Так Вы ничему не научитесь, нужно работать с реальным "железом". Собственно, Ардуино для того и придумано.
 
Цитата:
Собственно вопросы:
1. Какую модель Arduino выбрать для покупки? Частота обновления информации 2-5 раз в секунду. Арифметические действия: +, -, /, * , работа с округлением, остатками, работа со строками. Размеры, напряжение питания не принципиальны. Кроме COM порта возможно в дальнейшем будет подключение GPS датчика, акселерометра, гироскопа. И соответственно расчеты будут перенесены на Arduino. Возможно под такие задачи выбрать и что либо другое, а Arduino будет недостаточно?
 
 
Это разговор ни о чем.
Время выполнения "одних и тех же" арифметических действия для разных типов чисел может различаться в сотни раз. Для грубой оценки - рекомендую заглянуть в тему http://arduino.ru/forum/obshchii/vremya-vypolneniya-otdelnykh-komand-arduino
Если нужно более одного COM-порта, то нужна либо МЕГА, либо BluePill.
 
Цитата:
2. Для полноценной проверки всей связки, показанной на рисунке, использую симулятор...
 
 
Еще раз: для полноценной проверки симулятор не подходит.
Deemon
Offline
Зарегистрирован: 07.06.2021
Доброго времени суток!
 
Спасибо большое за ссылку по производительности операций. Интересно, полезно!
 
Не совсем понял вот этот комментарий, если честно.
 
andriano пишет:
Это - не вопрос новичка к профессионалам, это - вопрос заказчика к исполнителям.Если речь идет об обучении новичка (а только в этом помогают во всех остальных разделах), то забудьте на время о конкретной задаче и переключитесь на задачи попроще - те, которые Вам будут рекомендовать.А если Вы считаете, что задачу должны выбирать Вы, - то в раздел "Ищу исполнителя" за деньги.
 
Я хотел спросить, а почему Вы так скептически относитесь к симуляторам? Ну ведь это логично, тем более когда есть такая возможность, все проверить, оценить свои силы и возможности платформы по программированию, даже протестировать "боевой код", до покупки "железки". Как раз для новичков это самое то, "песочница" так сказать. Потом загрузить скетч в редактор, отправить на Arduino и хотя бы знать, если что-то пойдет не так, что код рабочий и все дело в "железе" или коммутации. На одну проблему меньше становится. Или симуляторы "кривые" чаще всего? 
 
И, если я правильно Вас понял, Вы советуете под мои задачи взять Arduino Mega 2560. Можно тогда вопрос (если я правильно понял спецификацию конечно), но Arduino Due и частотой побольше и разрядность повыше. Чем Due плох?
sadman41
Offline
Зарегистрирован: 19.10.2016

Спалить проще, стоит дороже.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Deemon, Вы меня процитировали, но я так и не понял, по какому случаю. Вроде, ни то, что сверху моей цитаты, ни то, что снизу, к самой цитате не относится. Ну да ладно, если нужно будет - уточните.

Deemon пишет:

Я хотел спросить, а почему Вы так скептически относитесь к симуляторам? Ну ведь это логично, тем более когда есть такая возможность, все проверить, оценить свои силы и возможности платформы по программированию, даже протестировать "боевой код", до покупки "железки".
 
Если "такая возможность есть" - полностью поддерживаю. Но я пока с таким не встречался.
Цитата:
Как раз для новичков это самое то, "песочница" так сказать.
 
Видите ли, умение правильно запустить эмулятор, а потом - правильно истолковать его результаты - это те умения, которые сами по себе не возникают, и которым все равно надо учиться. Так вот я рассматриваю время и усилия, потраченные на это обучение, как нерациональные. К тому же, с неочевидным результатом т.к. эмулятор, скорее всего, окажется не описывающим все особенности работы "железа".
 
Цитата:
Потом загрузить скетч в редактор, отправить на Arduino и хотя бы знать, если что-то пойдет не так, что код рабочий и все дело в "железе" или коммутации.
Вы всерьез уверены, что прохождение на эмуляторе даст гарантии, что "код рабочий"?
Цитата:
На одну проблему меньше становится. Или симуляторы "кривые" чаще всего?
Это вопрос терминологический - нет идеальных симуляторов. По одной простой причине: чем точнее симулятор описывает реальное железо, тем сложнее его настроить для конкретной работы. На одной стороне этой шкалы мы получаем заведомо недостоверный эмулятор, а на другой - трудоемкость работы с ним существенно превышающую трудоемкость с реальным "железом". Так зачем он такой нужен?
Цитата:
И, если я правильно Вас понял, Вы советуете под мои задачи взять Arduino Mega 2560. Можно тогда вопрос (если я правильно понял спецификацию конечно), но Arduino Due и частотой побольше и разрядность повыше. Чем Due плох?

Due с одной стороны дороже, с другой - хуже описан и хуже адаптирован к Ардуино.

Но лично я использовал в своих проектах и Due - там, где он подходит.

rkit
Offline
Зарегистрирован: 23.11.2016

andriano пишет:

Due ... хуже описан и хуже адаптирован к Ардуино.

Чушь какая