Измерительная лаборатория с использованием 1С+Ардуино

02.05.20

Интеграция - Периферийные устройства

1С в автоматизации "научных" и около... экспериментов.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Бесплатно
Измерительная лаборатория с использованием 1С+Ардуино:
.epf 8,32Kb ver:0.1
43
43 Скачать бесплатно

Доброго дня всяк сюда входящий!

 

Чего только не придумывают люди сидящие в заточении самоизоляции! Одно радует, подопечные с работы меньше достают, и есть время позаниматься любимым хобби. Я радиолюбитель с пеленок, и даже позывной есть R6DCZ. Иногда грею ионосферу передатчиком в 1,0кВт, за что имею разные разговоры с инспекцией по электросвязи. Ну да ладно... мелкие шалости. Так вот... нарисовалась задача исследовать амплитудно-частотную характеристику некоторых узлов, которые я сконструировал для очередного приемника. Раньше (при СССР) был доступ к любой измерительной аппаратуре и проблем не было. В настоящее же  время приходится выкручиваться всякими подручными средствами купленные по случаю у китайцев на Али или на радиорынках. Исследовать АЧХ нам поможет эквивалент измерительного прибора Х1-47 собранный на коленках из Ардуины, модуля синтезатора частот на AD9850, небольшой обвески из дискретных компонентов и, конечно же, обработка на 1С!  

Приступим

Осуществим сборку "прибора" согласно принципиальной схемы.

 

 

У меня получилось на монтажной доске вот такое изделие

 

Черная коробочка рядом с доской - это логический анализатор DSLogic. Классная вещь для хака различных протоколов обмена. При помощи него удалось подобрать специфические параметры для стабильного обмена 1С с ардуинкой. Но это позже.

Ищем Arduino IDE, и загружаем скетч в Ардуино.

 

С железом закончили. Займёмся 1С

Готовую к использованию обработку я выкладывать в виде отдельного файла не буду. Опубликую только код. Там все понятно. В конфигураторе нарисуем форму вот такого вида

 

В модуле формы запишем следующий код

 

Здесь необходимы некоторые пояснения. Как известно MSCommControl - крайне капризная штука, особенно когда работает с виртуальным COMM портом, созданным USB соединением. Да и проинсталировать эту компоненту на современные 64bit ОС - это отдельная песня. На Инфостарте эту проблему уже обсуждали. У меня резонный вопрос к разработчикам платформы 1С - Что, за 20 лет развития, не хватило сил для реализации встроенных объектов для управления сокетами и портами на уровне платформы? Т.е. для мобильной "Телефонию" запилили , а для десктопа?

По поводу свойства компоненты RThreshold. Туда пишется число полученных байт, при достижении которых сработает событие onComm. Благодаря анализатору стало понятно сколько вешать в граммах.

 

Магическое число в 10 ms вычислил там же. Оно необходимо для запуска обработчика ожидания. Интервал ожидания взял с запасом плюс 1 секунда.

 

Ну и полученный результат измерения АЧХ, точнее коэффициента передачи в полосе частот, колебательного контура на 465 кГц в линейном и логарифмическом масштабе. На картинках виден резонанс. Именно этого я и добивался.

 

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

Пожалуй все.Благодарю за внимание.

Будут вопросы,отвечу.

Upd1: На управляемой форме, качаем бесплатно :)

Upd2: от 06.05.2020 - про сеть

Я обещал читателю event-driven networking с 1С и Ардуинкой. Получите... распишитесь... Не забываем плюсики на статью вешать. Не жалко же :) , я надеюсь... 

Исходные данные таковы. Имеем плату MEGA2560, ethernet шилд на базе W5100 и комнатный датчик DHT11.  Выглядит вот так: 

 

Вместо Меги можно Леонардо или УНО R3 задействовать. Без разницы. Можно и Нано, только тогда монтажными перемычками нужно все правильно соединить. Маленький лайфхак по поводу эзернет шилда. Иногда китайцы не те номиналы паяют на платы. Внимательно смотрите сюда:

 

Если у Вас резисторная сборка такого номинала, придется поработать с паяльником. Если номинал 510 - ничего не делаем.

Найдите пару резисторов с номиналом 100 ом и напаяйте таким образом. Сделайте это аккуратно, без соплей и коротышей.

 

В результате этой процедуры получите устойчивую работу шилда с любым сетевым оборудованием.

Скетч в Ардуинку заливаем такой:

 

Это квинтэссенция штатных примеров из Arduino IDE. Для нашего эксперимента сойдет. Ну и займемся обработкой на 1С. Обычная форма, толстый клиент. На УФ тоже работать должно, я не проверял.

Рисуем такую форму:

 

Код модуля формы, тут все понятно :

 

Ну и результат работы без всяких HTTP,WEB и прочих заморочек

 

По поводу регистрации древних компонентов в 64bit ОС нашел кино на ресурсе ютуб. Смотрим, кто не видел.

Ну, пожалуй все... 

 

обработка измерения ардуино

См. также

Периферийные устройства Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 Россия Абонемент ($m)

Пример работы для разработчика с оборудованием принтер чеков в рамках новейшей библиотеки подключаемого оборудования.

10 стартмани

14.11.2024    511    1    aximo    0    

3

Периферийные устройства Системный администратор Пользователь Платформа 1С v8.3 1С:Бухгалтерия 3.0 Абонемент ($m)

Простая в использовании обработка https://infostart.ru/1c/tools/1001819/ в целом решает поставленную задачу, но имеет явный недостаток - взаимодействует только с принтерами, подключенными к серверу. Доработанная версия позволяет работать как с принтерами на клиенте, так и на сервере

1 стартмани

30.08.2024    386    3    Sergey1CSpb    0    

4

Робототехника и умный дом (Arduino, NFC, RFID) Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Управлять умными устройствами можно не только через Алису... Как насчет 1С?

1 стартмани

15.08.2024    677    0    vasilievil    0    

1

Периферийные устройства Пользователь Платформа 1С v8.3 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Розничная и сетевая торговля (FMCG) Россия Абонемент ($m)

Расширение для вывода информации для покупателя из РМК на второй монитор. Также реализован вывод картинок из каталога в левую часть экрана покупателя. Разработано для УТ 11.5, УНФ 3.0.6 и 3.0.9.

1 стартмани

12.08.2024    1059    21    Rastopchinss    15    

3

Периферийные устройства Пользователь Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Абонемент ($m)

Вывод для клиента на второй монитор (информационное табло) номера заказа в браузер (по умолчанию, например, Яндекс). Внешняя обработка может быть легко переделана под другие конфигурации (нужды) даже начинающим программистом.

1 стартмани

02.08.2024    686    0    AlOkt    0    

5

Периферийные устройства Программист Пользователь Платформа 1С v8.3 1С:Розница 3.0 Абонемент ($m)

Пример работы с эмулятором дисплея покупателя через библиотеку БПО.

6 стартмани

10.07.2024    704    5    aximo    0    

3

Периферийные устройства Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Речь пойдет не о сканерах штрихкодов 2D/3D/RF/распознавании лиц и прочего, а о старом добром аппарате, позволяющем считать страницу и отправить ее образ в ПК через COM/USB порт. Рассмотрим, как можно подключить и использовать сканер в типовых 1С-конфигурациях. И что делать, если никак не найти команду настройки сканера.

1 стартмани

28.05.2024    1026    Sergey1CSpb    2    

6

Периферийные устройства Пользователь Платформа 1С v8.3 1С:Розница 2 Россия Абонемент ($m)

Расширение для 1С: Розница 2.3 версий 2.3.15.ХХХ и выше. Удобный способ изменения принтера по умолчанию во встроенной обработке печати ценников и этикеток. Только для операционной системы Windows.

1 стартмани

13.05.2024    1006    5    independ    0    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. OLEG4120 165 02.05.20 14:55 Сейчас в теме
Настало время, что можно ставить + если человек не пожрдничал и не выложил статью в духе "я тут накидал, короче, во вложении".
А вам плюс, что статья не только про 1с и админство
rovenko.n; AnKonAlm; Plotks2017; +3 Ответить
2. starik-2005 3087 02.05.20 18:34 Сейчас в теме
Там, где стоило бы использовать бесплатный питончик, люди используют старые и добрые обычные формы. С другой стороны, не было бы статьи на Инфостарте, а была бы на Хабре )))
3. maxlab 77 02.05.20 18:46 Сейчас в теме
(2) На УФ не взлетело. Нет возможности передать в обработчик ПолучитьДанные(), onComm то бишь, ссылку на КомПорт. Ограничение управляемых форм. Про питончик ничего не скажу... не пробовал :)
4. starik-2005 3087 02.05.20 22:19 Сейчас в теме
(3)
На УФ не взлетело.
Так сделайте переменную "&НаКлиенте Перем КомПорт;" и инициализируйте ее в ПриОткрытии().
5. maxlab 77 02.05.20 23:46 Сейчас в теме
(4) А чё, так можно было ?! :) Что то я тормознул... старею. Завтра в публикацию добавлю вариант на УФ. Спасибо Старик!
9. papami 56 04.05.20 13:07 Сейчас в теме
(2)
а была бы на Хабре

Должно быть нормальным, что статьи про Arduino (без притягивания 1С) размещаются на Инфостарте. Возможно, тогда их здесь будет больше.
6. aspirator23 339 03.05.20 10:10 Сейчас в теме
10 кВт - неужели такое возможно? Это - уровень дальней связи с подводными лодками.
7. maxlab 77 03.05.20 11:19 Сейчас в теме
(6) Запятая не проставилась. 1,0 кВт - разрешенная мощность для 1 и 2 категории. 10 кВт не сложно сделать по двухтактной схеме с заземленными сетками. 6-8 ламп в параллель, и будет счастье. Правда у соседей утюги петь начинают :). Ко мне претензии предъявляли из за жалоб соседей.
protexprotex; Алексей Воробьев; +2 Ответить
8. protexprotex 139 04.05.20 09:08 Сейчас в теме
Про утюги сравнение понравилось :-) - смеялся полминуты
10. Johny_v 140 04.05.20 23:11 Сейчас в теме
Тоже недавно небольшой проект делал на arduino для мониторинга серверной. Никак не найду времени написать статью про это, может будет интересно кому-нибудь.

Железки лучше в Zabbix/Icinga мониторить. Arduino в формате json может отдавать ответ, а zabbix у себя собирать, визуализировать и оповещать.
romankor; papami; +2 Ответить
11. maxlab 77 06.05.20 18:31 Сейчас в теме
(10) Мы пойдем другим путем! Ближе к полуночи будет расширение этой публикации, или новая заметка про event-driven networking 1С+Ардуино. Может кому пригодится.
12. sg12 17 15.05.20 07:36 Сейчас в теме
Я лет 5 назад выиграл в споре бутылку текилы, температуру через Ардуино в регистр сведений писал. Вообще для автоматизации производства интересная возможность.
13. maxlab 77 15.05.20 11:22 Сейчас в теме
(12)Возможность конечно интересная... Но есть нюансы. Применить Ардуинку вместо промышленного ПЛК можно, но не всегда и не везде. Есть процессы повышенной опасности. Туда оборудование без сертификации не установишь. Есть жесткие условия эксплуатации. Там, без дополнительной схемотехнической обвязки Ардуинки не прославишься. Нужно решать вопросы помехозащищенности, гальвано-опто-развязки и так далее. Самый примитивный пример это Промдуино.
14. SGordon1 15.05.20 15:16 Сейчас в теме
А просто на бейсике накропать тот же функционал , не вариант?
15. maxlab 77 15.05.20 16:46 Сейчас в теме
(14) Берите выше...С++ наше все! Но мы тут за 1С топим :)
rovenko.n; +1 Ответить
16. Shmell 546 02.10.20 04:34 Сейчас в теме
17. user1859117 13.10.22 18:59 Сейчас в теме
(15) Можно вообще на ASM-е сделать все и сразу-и к 1С не будет претензи по поводу десктопа :-)))))
Оставьте свое сообщение