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

02.05.20

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

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

Скачать файлы

Наименование Файл Версия Размер
Измерительная лаборатория с использованием 1С+Ардуино:
.epf 8,32Kb
43
.epf 0.1 8,32Kb 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 ОС нашел кино на ресурсе ютуб. Смотрим, кто не видел.

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

 

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

См. также

Распознавание номеров автомашин с ip - камер, видео, фото

Распознавание документов и образов Периферийные устройства Автомобили, автосервисы Россия Платные (руб)

Программа считывает кадры с ip-камер (http - запрос к камере), видео, фото (источники кадров (нет ограничения на их количество) настраивается в конфигурационном файле), находит и распознает номера автомашин и сохраняет в базу db, с сохранением фото номера и автомашины, а также времени детекции.

20400 руб.

31.05.2023    3799    2    1    

3

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

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

Внешняя обработка получения изображения с веб-камеры с возможностью его кадрирования по произвольно выделенной области. Использует собственную внешнюю компоненту на основе библиотеки AForge. Содержит примеры интерактивного взаимодействия с полем HTML.

20.03.2024    318    1    AndSem    1    

3

У.дача каждому 1С-нику или Умный дом для ленивых (зачеркнуто) пытливых

Робототехника и умный дом (Arduino, NFC, RFID) Бесплатно (free)

Обладая минимальными навыками инженера, вполне можно сделать «умными» относительно недорогие устройства, и управлять всей логикой на 1С. Возможности огромны: управление светом, включением-выключением розеток, автополив, сигнализация и т.д. О самостоятельной реализации в 1С нестандартной логики управления устройствами пойдет речь в статье.

29.02.2024    1935    atland    6    

25

Прямая печать на принтерах TSC из 1С

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

Прямая печать на принтерах TSC из 1С при вызове с сервера позволяет печатать из тонкого клиента, мобильного клиента и веб-клиента. Потребуется установка драйвера и библиотеки для отправки команд на этот драйвер.

1 стартмани

19.02.2024    532    3    realslavyan    0    

5

HotKeys на Python для 1С

Периферийные устройства Конфигурации 1cv8 Бесплатно (free)

Недавно прочитал статью на Инфостарте о KeyPad и вначале захотел себе такой, но через какое-то время я понял, что дополнительная даже маленькая клавиатура занимает место, и нужно все время держать ее под рукой. Это все создает дополнительные неудобства.

20.12.2023    4920    John_d    25    

70

Очистка очереди печати конкретного принтера

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

Очистка очереди печати выбранного принтера, перезапуск службы печати, вывод списка системных принтеров, открытие свойств принтера из 1С.

1 стартмани

07.11.2023    1257    1    vsnazarov    1    

26

Печать этикеток на DYMO LabelManager 280 через DYMO Connect Web Service

Периферийные устройства WEB-интеграция Этикетки, ценники Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

На сайте производителя принтера DYMO LabelManager 280 вместе с драйвером поставляется пакет DYMO Connect, который предлагает функционал вёрстки этикеток в фирменном формате и отправки их напрямую на принтер. Так же в этом пакете есть веб-сервис для взаимодействия с принтером через HTTP-запросы, о котором и пойдет речь в этой статье.

29.08.2023    1458    GeraltSnow    0    

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

Должно быть нормальным, что статьи про Arduino (без притягивания 1С) размещаются на Инфостарте. Возможно, тогда их здесь будет больше.
6. aspirator23 339 03.05.20 10:10 Сейчас в теме
10 кВт - неужели такое возможно? Это - уровень дальней связи с подводными лодками.
7. maxlab 76 03.05.20 11:19 Сейчас в теме
(6) Запятая не проставилась. 1,0 кВт - разрешенная мощность для 1 и 2 категории. 10 кВт не сложно сделать по двухтактной схеме с заземленными сетками. 6-8 ламп в параллель, и будет счастье. Правда у соседей утюги петь начинают :). Ко мне претензии предъявляли из за жалоб соседей.
protexprotex; Алексей Воробьев; +2 Ответить
8. protexprotex 113 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 76 06.05.20 18:31 Сейчас в теме
(10) Мы пойдем другим путем! Ближе к полуночи будет расширение этой публикации, или новая заметка про event-driven networking 1С+Ардуино. Может кому пригодится.
12. sg12 17 15.05.20 07:36 Сейчас в теме
Я лет 5 назад выиграл в споре бутылку текилы, температуру через Ардуино в регистр сведений писал. Вообще для автоматизации производства интересная возможность.
13. maxlab 76 15.05.20 11:22 Сейчас в теме
(12)Возможность конечно интересная... Но есть нюансы. Применить Ардуинку вместо промышленного ПЛК можно, но не всегда и не везде. Есть процессы повышенной опасности. Туда оборудование без сертификации не установишь. Есть жесткие условия эксплуатации. Там, без дополнительной схемотехнической обвязки Ардуинки не прославишься. Нужно решать вопросы помехозащищенности, гальвано-опто-развязки и так далее. Самый примитивный пример это Промдуино.
14. SGordon1 15.05.20 15:16 Сейчас в теме
А просто на бейсике накропать тот же функционал , не вариант?
15. maxlab 76 15.05.20 16:46 Сейчас в теме
(14) Берите выше...С++ наше все! Но мы тут за 1С топим :)
rovenko.n; +1 Ответить
16. Shmell 533 02.10.20 04:34 Сейчас в теме
17. user1859117 13.10.22 18:59 Сейчас в теме
(15) Можно вообще на ASM-е сделать все и сразу-и к 1С не будет претензи по поводу десктопа :-)))))
Оставьте свое сообщение