Добрый день. Вчера на форуме программы FLProg пользователем Rw6cm был выложен очень интересный пост. Я решил, что информация из него может оказаться интересной более широкому кругу людей, поэтому описание проекта от автора опубликовал здесь (автор не имеет аккаунта на Geektimes).
Пример, как из Excel управлять Arduino и получать данные.
Информация может быть полезна сторонникам Excel и знающим основы VBA.
Пример реализован в FLProg 1.10.5 на Windows7 — 32 и 64, и MsOffice 2007.
Все необходимое для его повтора находится в архиве.
В качестве примера взят датчик DS18B20, который по команде из Excel через ComPort, с arduino uno передает данные температуры каждые 5 секунд в Excel, и строит в нем OnLine график.
На стороне Arduino мониторинг температуры и команды Excel выводятся на дисплей.
Схемка в FLProg не сложна для понимания и повтора.
На стороне Excel программа написана в VBA с использованием ActiveX MSCOMM32 мелкософта.
Библиотека и хелп по установке внутри.
Важно!!!
Элемент ActiveX MSComm древний, и работает с COM портами с 1 по 16.
Если ваше устройство определилось с большим номером, измените его в свойствах драйвера.
Сборка проста, подключаете arduino по юсб шнуру,
открываете проект, ставите свой адрес датчика Ds18b20, заливаете.
Запускаете файл excel, разрешаете в нем работу макросам, прописываете № Com порта arduino,
нажимаем «Начать»… и наслаждаемся.
Кому захочется поковыряется в коде, пароль 123
Дерзайте!!!
Архив с исходниками
Комментарии (12)
totuin
26.03.2016 21:40Автор к сожалению не имеет аккаунта на Гиктайме, и не может написать от своего имени. Тема показалась мне интересной, и я думаю есть смысл опубликовать её здесь. Тем более что здесь скопирован не текст поста а личное описание автора которое нигде больше не опубликованно.
beliakov
27.03.2016 13:59+2Если так то другое дело. Просто у вас первый абзац сформулирован так, будто дальше пойдет копия сообщения с форума. Текст обернутый в <blockquote> наводит на те же мысли.
totuin
27.03.2016 21:26-2Если посмотреть на количество просмотров и добавлений в избранное, тема действительно оказалась интересной. Поскольку большинство участников форума пользователей программы FLProg не имеют аккаунта на Гиктайм (ну так сложилось), я планирую в дальнейшем продолжить рассказывать об их успехах в своём блоге, естественно с указанием авторства и разрешения автора. Даже не смотря на возмущение "борцов за чистоту портала". Надеюсь администрация Гиктайма поймёт что интересные посты выгоднее "идейной чистоты" и не сразу меня забанят.
Sadler
27.03.2016 17:06+2FLProg, Excel, VBA, COM, ActiveX
Вот это комбо!chaloner
28.03.2016 06:17-1Еще и com-порт найти надо…
Автор идеи явно не искал легких путей.Zenitchik
28.03.2016 12:51-1А чё его искать? Воткнул переходник в USB и пользуйся. Порт, на котором можно «лапками дрыгать» как угодно, штука в хозяйстве полезная.
AndyE
28.03.2016 18:00Ну под это дело наверняка был найден какой-нибудь древний ноут или завалявшийся в кладовке системник на котором COM-порт найти не проблема. А там глядишь и LPT c ISA не задействованы остались.
totuin
28.03.2016 18:12-1Господа, прежде чем писать "очень ироничные и глубокомысленные" комментарии, я считаю надо быть хоть немного в теме. Я так понимаю Вы увидали знакомые слова "Компорт, схема, датчик" и не удержались от того что бы отметиться.
Проведу ликбез.
- Для снятия показаний с датчика используется плата Arduino. Она подключается к компьютеру через USB (есть такой порт на всех компьютерах, и даже на новых как ни странно). В результате в компьютере получается виртуальный (как бы настоящий) ком порт, который и используется в описанном примере. Так что искать в кладовке старый ноутбук с ком портом нет необходимости.
- Схемка рисуется в программе FLProg, которая потом преобразует её в прошивку для платы Arduino. Так что собирать схему из проводочков не надо.
beliakov
https://geektimes.ru/info/help/rules/
beliakov
Минусуют те же товарищи которые цитирование конституции считают экстремизмом? :-)