0

Визуализация ардуино на компьютере

Как у каждого (ну или почти у каждого) начинающего ардуинщика в один прекрасный момент у меня возникла идея визуализировать данные собранные с помощью Ардуино. Ведь, зачастую, нужно не только наблюдать температуру (влажность, давление, напряжение, силу тока…) в теплице (холодильнике, инкубаторе, квартире, на улице…), но еще и просмотреть тенденцию изменения этих параметров. Ведь тенденция может сказать очень многое, зачастую гораздо больше самого параметра. Безусловно, интересно подключить температурный датчик к Ардуино и посмотреть, сколько сейчас градусов, но еще более интересно было-бы знать, как эта температура менялась, например, в течении суток. Однако подключение и сбор информации с каких-либо датчиков выходит за рамки данной статьи. Мы будем оперировать переменными, которые сгенерирует по простейшему закону сам Ардуино, а читатель на практике сможет уже самостоятельно «привязать» эти (или какие-либо свои) переменные к показаниям всех необходимых датчиков. Данное решение сократит код, что в свою очередь поможет новичку не «утонуть» в перипетиях большой программы написанной на малознакомом языке. Также, для простоты понимания я решил разбить данную статью на 3 части. В первой части, речь пойдет об Ардуино, и всем, что связано с ним. Во второй – самой объемной мы поговорим о программном обеспечении персонального компьютера. В третьей – самой короткой, объединим все вместе и посмотрим, что из этого выйдет. Также, в этой части мы сделаем некоторое маленькое программное усовершенствование, немного которое расширит наши знания и, соответственно, возможности. Итак, приступим!

Часть первая. Вступительная, ардуинная

Для данного эксперимента нам не понадобится практически ничего. Если ARDUINO UNO у нас еще нет – его можно быстро и просто приобрести по адресу: arduino-kit.com.ua/arduino-uno-original-italiya-new-rev3.html
в сети некоторую распространенность получило мнение, что гораздо дешевле все можно спаять самому. Это действительно так. При условии, что есть навыки изготовления макетных плат, пайки радиодеталей на эти платы, да и просто умения отличить резистор от конденсатора. Если выше перечисленных навыков нет, то вместо работоспособной платы будем иметь массу испорченного настроения и впустую потраченного времени… Ну, и немного выброшенных денег. А так – сегодня проплатили, через несколько дней (иногда даже завтра) получили. Особенно приятно это там, где радиорынка отродясь не было. А, со временем, если будет это самое желание и время, я расскажу, как можно сделать плату для какого-нибудь своего шилда (это платы расширения для Ардуино так называются) своими руками, причем у себя дома.


Рисунок 1

Итак, подключаем Ардуинку к компьютеру, с помощью соответствующего кабеля, заливаем скетч (так называется программка, специально написанная для Ардуино), кстати, предполагается, что сама программа для написания и заливки скетчей, а также все драйвера уже установлены в системе. «А что-же заливать?» – спросите Вы, а вот этот небольшой скетч.

Скетч:

int i; // назначаем переменную
void setup() <
Serial.begin (9600); // запускаем порт на скорости 9600
>
void loop()
<
for (i=1;i // Начинаем цикл увеличения с 1 до 10 через 1
<
Serial.println (i); // Пишем значение переменной в порт
delay (100); // Делаем паузу в 0,1 секунды
>
for (i=10;i>1;i–) // Уменьшения с 10 до 1 через 1
<
Serial.println (i); // Пишем значение переменной в порт
delay (100); // Делаем паузу в 0,1 секунды
>
> // И все сначала 🙂


Рисунок 2

Итак, видно, что данный скетч не сложнее, а гораздо проще скетча из прошлой моей статьи. Кому интересно – может просмотреть: arduino-kit.com.ua/chasy-ds1302-dlya-rduino-uno.html . Но, возникает один вопрос: «А, что это за маленькое окошечко рядом с основной программой?» А это так называемый «Монитор порта». Смотрим Рисунок 3.


Рисунок 3

Если все в порядке – наблюдаем, как в окошке монитора порта бегут циферки, а потом переходим ко второй части.

Часть вторая. Большая, программная

Когда я задался целью визуализировать данные – столкнулся с проблемой – отсутствие программного обеспечения для этих целей. Все, что удалось узнать «с наскока» было либо самодельным и меня не удовлетворяло (Монитор порта встроенный в программу гораздо проще и лучше), либо требовало одновременно глубоких знаний и умения обращаться с шаманским бубном. Но, так, как я новичок в этом деле, то требуемые знания у меня отсутствуют, равно, как и шаманский бубен. Перепробовав массу разнообразного программного обеспечения окончательно я остановился на LabVIEW 2012, от National Instruments. Поборникам авторских прав могу сказать, что с официального сайта можно скачать полнофункциональную триальную версию, кто же себя к таковым не относит может скачать такую-же версию, а потом… Сами знаете, что потом. Распространение пиратского ПО никоем образом не входит в рамки этой статьи. Да, и еще – необходимо установить еще один компонент, а именно NI VISA, я использовал версию 5.3… Устанавливается без проблем. Кто устанавливал Windows установит и LabVIEW, а потом NI VISA. К единственному существенному минусу данной программы относится то, что она английская. Побороть это можно двумя способами. Или виртуозно изучить технический английский язык, или скачать из интернета ряд книг по этой программе. Книг, кстати действительно много. Надо будет и самому почитать на досуге. Итак – начинаем визуализировать. Для этого создаем Blank Vi, «виртуальный прибор» по нашему.

Читайте также:  Зачем забивают крышку гроба


Рисунок 4

Перед нами открываются окна, в которых и предстоит поработать.


Рисунок 5

Внимательный читатель тут же спросит: «А третье окошко, то которое в середине, откуда взялось? У меня нет такого!» Спешу рассказать, точнее показать.


Рисунок 6

Если в окошке отображается порт, а он не может не отображаться, как-то у нас ведь скетч в Ардуинку попал, закрываем «третье» окно и больше, по крайней мере, в этом проекте, его не трогаем. Зато приступаем к «визуальным вкусностям». Предлагаю сделать «осцилограф», пару «стрелочных» приборов и «указатель уровня». Так веселее, а времени займет не на много больше. Дальше рассматриваем картинки, не забывая делать то, что на них нарисовано:


Рисунок 7


Рисунок 8


Рисунок 9

Получилось красиво! Хотя кому как… Кстати – габариты «приборов» можно легко изменить, также легко изменить их месторасположение а еще можно изменить предел шкал… Но это все потом, а сейчас нам нужно все это оживить. Для этого переходим на окошко, которое мы до этого обделяли своим вниманием, но, не смотря, на это там произошли изменения. А именно – появились приборчики, как и на «сетчатом» окне, правда, выглядят они немного по-другому.


Рисунок 10

Начинаем оживлять. Перво-наперво организуем бесконечный цикл (пока можно не вдаваться что это такое), а, для особо любознательных расскажу – это такой цикл, который будет выполняться ровно столько, сколько потребуется, пока его принудительно не остановят. Если нужно будет год – проработает год. Организуется он просто, для этого используем элемент While Loop. «Раздобыть» его можно двумя способами. Первый способ – щелкнуть правой кнопкой в любом свободном месте окна и в дебрях выпавшего меню, при помощи «какой-то матери» найти-таки этот элемент. Второй – более простой: смотри рисунок 11.


Рисунок 11


Рисунок 12

Теперь в нашу «Программу-диаграмму» добавим элементы (VISA Configure Serial Port, VISA Read Serial и VISA Close Serial) управления портом. Тут тоже отлично применяется «второй» способ. Когда мы разместим эти три элемента должно получиться что то похожее:


Рисунок 13

Поставим еще один маленький элементик, а именно Scan from string и приступим к «обвязке» всего того, что у нас есть.


Рисунок 14

«Обвязка» в данном случае заключительный этап. Этап самый интересный, но здесь легче всего наделать ошибок. Начнем с конца. Переместим элементы для более удобного соединения.


Рисунок 15

Начинаем соединять с самого простого, в данном случае с приборов. Как только курсор подвести к месту соединения приборов (или других элементов) курсор превратиться…. В непонятно что. Некоторые в этом «непонятно что» видят катушку провода. Может быть, так оно и есть. Судить вам.


Рисунок 16

Сначала соединяем приборы.


Рисунок 17

Теперь элементы управления портом между собой и с элементом Scan from string.


Рисунок 18


Рисунок 19


Рисунок 20


Рисунок 21


Рисунок 22

Выбираем нужный нам порт.


Рисунок 23

Часть третья. Самая короткая. Интегрирующая и продвигающая


Рисунок 24


Рисунок 25

И вот все было-бы хорошо, если бы не «Большое НО». Периодически выскакивает «Ошибка №85» …
Сейчас разберемся: Вычислить ошибку было трудно, но решение оказалось на поверхности. Данная ошибка выскакивает, когда чтение данных из порта начинается на «полуслове». Программа входит в замешательство и начинает ругаться. Побороть это можно просто игнорируя эту ошибку. Но мы сделаем это красиво, т.е. программно. А именно подключив блок Clear Errors.vi. Где его взять написано выше (там, где и все остальное) сложностей быть не должно. Подключается тоже просто:


Рисунок 26


Рисунок 27

Да, и еще одно. Рассказываю, как и обещал, как «переградуировать» шкалы приборов, ведь, согласитесь – крайне неудобно мерять значения от 0,1 до 0,6 на приборе, градуировка которого охватывает диапазон от 0 до 10, а померять значения от 20 до 100 на подобном приборе просто невозможно. Для «исправления» данной ситуации два раза щелкаем по конечному значению шкалы, вводим нужное нам значение и нажимаем на «Enter», точно также поступаем и с начальным значением. Значения в середине шкалы изменятся автоматически.


Рисунок 28

Обзор подготовил Павел Сергеев

Моделирование событий в реальном времени было основой многих отраслей. На протяжении многих лет некоторые крупные процессы симуляции были областью аэронавтики и авиации. Сегодня симуляторы Ардуино позволяют всем новичкам и профессиональным проектировщикам учиться программировать и тестировать идеи, не опасаясь потери энергии впустую вместе со своими деньгами.

Симуляторы Arduino – отличные платформы для программистов и дизайнеров, которые хотят изучить основы проектирования и схемотехники. Успех таких программ связан с тем, что он предоставляет вам возможность учиться, не опасаясь повредить устройство. Кроме того, студенты, у которых могут возникнуть проблемы с приобретением электрооборудования, не имея понятия о том, как они будут функционировать, могут понять многие нюансы через пробы и ошибки с помощью этих симуляторов. Это сэкономит вам много денег и времени.

Еще одно большое преимущество симуляторов Ардуино заключается в том, что он поддерживает построчную отладку, поэтому пользователь точно знает, где и в какой строке он или она сделал что-то не так. Симуляторы существуют в различных формах и разработаны для совместимости с основными операционными системами – Windows, Linux и Mac OS. Поэтому, чтобы упростить поиск отличного симулятора Arduino, созданного для экосистемы вашего компьютера мы составили список самых популярных программ.

Читайте также:  Диаметр вала двигателя стиральной машины

Симулятор Ардуино от PaulWare

Как следует из названия, этот симулятор Arduino был создан разработчиком по имени Пол. Симулятор с открытым исходным кодом и собрал свою собственную долю фанатов, которые одновременно добавляют свои идеи и создают учебники о том, как использовать симулятор. Этот бесплатный продукт был сделан преимущественно для экосистемы Windows и обеспечивает достаточную поддержку для новичков.

Основными компонентами, которые он обеспечивает для поддержки вашего проекта, являются светодиодный кратковременный выключатель, матричная клавиатура 4 на 4, матричная клавиатура 4 на 4 с ЖК-дисплеем, поворотный переключатель и т.д. YouTube видео предоставит вам достаточно информации для начала использования этого симулятора Arduino.

Для него также предусмотрен специальный раздел на форуме производителя Ардуино, на котором вы можете стать участником, чтобы узнать больше об обновлениях и схемах проектирования.

Simduino для iPad

Этот продукт – платный, разработанный для использования на экосистеме смарт-устройств Apple. Это комплексный симулятор, который позволяет вам узнать о программировании и электронике на платформе Arduino. Он обеспечивает достаточную поддержку большинства языков программирования Arduino C и может использоваться для запуска нескольких проектов в соответствии с потребностями пользователя.

Эта программа имеет отличный рейтинг на iTunes. Хорошая поддержка помогает своим пользователям понять детали и описания, доступные пользователям на официальном сайте. Приблизительно за 2 доллара вы получите отличный Ардуино симулятор, совместимый с вашим iPad.

ArduinoSim

Это кросс-платформенный симулятор Arduino, который выполняет то, что он обещает, обеспечивая отличную платформу для обучения программированию и дизайну схем. Хотя программа не имеет открытого исходного кода этот симулятор бесплатный и дает вам возможность работать в операционных системах Windows и Linux. ArduinoSim был создан на Python для интеграции с окружающей средой Arduino.

ArduinoSim был построен специально для научной и инженерной аудитории. И его пользовательская база обеспечила достаточное количество материалов для поддержки использования. Но надо понимать, что проект относится к области электротехники. Не забывайте также, что это абсолютно бесплатное решение.

Arduino Simulator для PC

Это также один из лучших симуляторов Arduino по нескольким причинам. Эти причины включают в себя его кросс-платформенные функции, эскизные проекты, отладочные эскизы и возможность удобно и легко разрабатывать сложные идеи. Может работать как на Windows так и для Linux. Пользователи также могут выбрать ЖК-дисплей и тип платы Arduino: Mega, Nano и Leonardo.

Важно отметить, что программа не с открытым исходным кодом, и его функции разрабатываются и дополняются его разработчиками. Существует также много вспомогательной документации и примеров проектов. К сожалению, продукт относительно дорогостоящий стоимостью около 20 долларов США. Но с такими большим количеством функций и отличным инструментом отладки, Arduino Simulator для ПК – отличный выбор, если вы готовы инвестировать немного ваших денег.

Emulare Arduino Simulator

Заинтересованы в многозадачности Arduino? Тогда Emulare – ваш лучший выбор. Этот инновационный симулятор предоставляет пользователю возможность одновременного моделирования нескольких проектов Arduino без каких-либо сбоев. Он также объявлен как кросс-платформенный симулятор из-за того, что он поддерживает как операционные системы Linux, так и Windows.

Emulare был создан для, преимущественно, электротехнических проектов и оснащен богатой библиотекой объектов. Emulare сосредотачивается на микроконтроллерах ATMega, которые позволят вам встраивать целые схемы с элементами памяти AVR, кнопками, переключателями, таймерами, светодиодами и другими компонентами. Удивительно, но Emulare со всеми его функциями и компонентами абсолютно бесплатна и обладает достаточной поддержкой, чтобы помочь пользователям понять ее особенности.

Simulator for Arduino

Продукт, разработанный virtronics, является полнофункциональным симулятором, доступным для студентов и начинающих в мире электроники, всех тек, кто ищет отличный симулятор Arduino. Это кросс-платформенный симулятор, который поддерживается как операционными системами Linux, так и Windows.

Особенности этого симулятора и некоторые его преимущества включают: учебное пособие, освещающее основы скетчей Ардуино; тестирование набросков идей, чтобы увидеть рабочие шаблоны, отладить ваши соединения и разработать виртуальные презентации для новых клиентов. Также важно отметить, что Simulator for Arduino – это не приложение с открытым исходным кодом, но оно бесплатно.

Yenka

Yenka – отличный симулятор, который студенты и опытные пользователи могут использовать для обучения и преподавания основ программирования и схем. Как и большинство Ардуино симуляторов из нашего списка, он оснащен всеми необходимыми функциями для проверки эскизов/идей, отладки ваших проектов и разработки сложных проектов без ввода аппаратного обеспечения в эксплуатацию.

Yenka широко используется преподавателями, преподающими основы электроники, но из-за стоимости студентам она может быть не по карману. Это кросс-платформенный симулятор, который работает как в операционной системе Linux, так и в Windows. Несмотря на стоимость программа может быть идеальным тренажером Ардуино для вашего личного использования.

AutoCAD 123D

Роль Autodesk в разработке электрических схем на протяжении многих лет нельзя переоценить. 123D – это еще одно из предложений компании Autodesk совместимых с Arduino. Во-первых, важно отметить, что 123D – это приложение САПР, которое имеет специальную функцию для проектирования схем. Поэтому при загрузке бесплатного приложения вы получите как приложение САПР, так и симулятор Ардуино.

Как и другие симуляторы, упомянутые выше, 123D – действительно отличный инструмент для изучения основ программирования Arduino и проектирования схем. Приложение работает на Windows и экосистеме Android. Оно также имеет очень большую базу ресурсов и поддержку (как и большинство продуктов Autodesk) для разработки схем или обучения с нуля. Это приложение настоятельно рекомендуется большинству пользователей.

Читайте также:  Иконка языка не отображается

LTSpice Arduino Simulator

LTSpice – это бесплатный универсальный и точный симулятор схем с возможностью моделирования программ и проектов, разработанных для экосистемы Arduino. Симулятор поставляется с множеством функций, которые были разработаны, чтобы упростить симуляцию, и включают в себя его атрибуты схем и форм сигналов.

Это один из немногих симуляторов, который поддерживается как платформами Windows, так и Mac OS. Он очень рекомендуется большим количеством онлайн-ресурсов для облегчения процесса обучения. Как было сказано ранее, симулятор абсолютно бесплатный.

PSpice

Каждый студент, занимающийся электротехникой и электроникой, должен был столкнуться с PSpice в течение месяцев, потраченных на изучение основ проектирования схем и программирования. Но для тех кто не знает что такое PSpice – это интуитивный симулятор, который можно использовать для моделирования Arduino из-за множества функций, интегрированных в приложение. PSpice поддерживается операционной системой Windows и Linux и поставляется в разных модулях или типах.

Студенты могут использовать PSpice Lite, который абсолютно свободен, чтобы изучить основы программирования Ардуино, в то время как компании, преподаватели и другие эксперты могут использовать платный PSpice. PSpice в настоящее время используется в различных отраслях промышленности – автомобилестроении, образовании, энергоснабжении и т.д.

Circuit Lab

Circuit Lab Arduino Simulator – простой схематичный и мощный инструмент моделирования. Этот симулятор был разработан после PSpice, и он был построен преимущественно для использования электриками и инженерами электроники. Его функции позволяют пользователю изучить внутреннюю работу Arduino, реализовать отладку проектов и схем проектирования.

Приложение Circuit Lab не является бесплатным, и это может быть ограничивающим фактором для студентов, которые ищут доступный симулятор Arduino для работы. Приложение работает как в операционных системах Windows, так и в Linux. Развитие программы держится на большом сообществе и имеет достаточное количество вспомогательных материалов, тематических исследований и примеров, которые рассказывают о его возможностях и использовании.

Симулятор EasyEDA

Вот еще один из моих фаворитов благодаря своим особенностям, удобству использования и широкой поддержке основных операционных систем. EasyEDA хорош для обучения программированию и дизайну схем в Windows, Linux, Mac OS и Android – этим немногие могут похвастаться.

Это связано с ценой, которая может быть препятствием для некоторых. Помимо этого, существует множество учебных материалов, а также онлайн-сообщество, посвященное обсуждению возможностей EasyEDA.

Circuits-cloud Simulator

Среди всех приложений выше не было еще варианта моделирования в браузере. Тогда как Circuits-cloud – отличный симулятор Ардуино, который может быть использован кем-либо для изучения основ. Приложение разработано только с базовыми конструктивными особенностями, чтобы сделать эскиз и симуляцию веселой и легкой для понимания новичками. Приложение также бесплатное!

Systemvision

Systemvision – еще один яркий облачный симулятор, который можно рассмотреть для симуляции схем Arduino. Это бесплатный онлайн-инструмент с функциями, которые вам помогут изучить и создать проекты. Также вы сможете поделиться своими идеями со своими сверстниками или клиентами, чтобы получать мгновенную обратную связь. Приложение вокруг себя собрало большое сообщество и имеет отличную поддержку со стороны создателей.

цифровая электроника вычислительная техника встраиваемые системы

Guino: удобная визуализация данных для Arduino

Зачастую при отладке Arduino-проектов нужно выводить данные на экран, чтобы иметь понимание о процессах, протекающих в реальном времени, и в дальнейшем анализировать их. И возможностей последовательного порта хватает далеко не всегда, поскольку с помощью терминала последовательного порта в стандартной версии Arduino IDE можно выводить только символьные значения, что не очень удобно для человека, поскольку при оперировании с большими массивами данных общая картина при быстром обновлении информации просто не складывается, и нужно время для того, чтобы разобрать процессы, скрывающиеся за этими массивами данных. В связи с этим группой энтузиастов была создана специальная программа и библиотека для удобной визуализации данных из Arduino.

Пакет Guino можно скачать здесь, а исходники можно найти здесь.

Guino обладает рядом возможностей и преимуществ. Здесь вы можете гибко настраивать интерфейс отображения Все кнопки, слайдеры, графики реализуются через скетч Arduino, это значит, что программа графического интерфейса пользователя будет действовать как ведомый по отношению к скетчу. Для удобства можно сохранять параметры прямо на плату, то есть в энергонезависимую память EEPROM платы Arduino. Параметры могут загружаться всякий раз автоматически после подачи питания на плату, даже если к Arduino не подсоединен компьютер.

Удобство использования Guino еще заключается в том, что можно заранее получить готовый прототип интерфейса, прежде чем браться за паяльник и делать конечный физический интерфейс "в железе". Кроме того, этот интерфейс можно удобно просматривать на полном экране, просто нажав на кнопку "F" на клавиатуре.

Распаковав архив с Guino, нужно скопировать содержимое первой папки (название Copy to ArduinoLibrariesFolder) в папку Libraries, находящейся в Arduino IDE. Для быстрого старта выберите один из примеров (Files – Examples – Guino – пример). Если вы выбрали простой пример с потенциометром и светодиодом (BasicPotmeterAndLed), то соберите схему, представленную ниже.

Загрузите скетч примера в Arduino и запустите приложение Guino. Выберите последовательный порт (Serial Port) и нажмите соединение (Connect).

Здесь следует заметить, что номер порта должен быть меньше или равен 10, иначе ваш проект попросту не заработает. Этот баг связан с Openframeworks, с помощью которого была написана Guino.

Ниже представлено видео, показывающее процесс работы Guino:

admin

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *