Управление устройствами из "1С:Предприятие 8"
Название довольно громкое и "не совсем точно" отражает смысл конфигурации... У представленной программы судьба сложилась так:
В канун (тогда Нового) 2014 года захотелось как-то "разнообразить елочную иллюминацию" - в итоге реализовалась идея управления гирляндами с компьютера через СОМ порт по радиоканалу. Новый год благополучно наступил, а описание конструкции было предложено к публикации в журнал "Радио", где статья (даже в двух частях) и вышла - "Радио №11, 2014, стр.50" и "Радио №12, 2014, стр.34".
Коротко, смысл идеи такой: елочные гирлянды (или любые другие источники света) подключены к микроконтроллеру, "программы мигания гирлянд" в него можно загружать дистанционно - по радиоканалу (есть приемник ООК 433МГц). "Программки" сочиняются на компьютере и представляют собой обычный текстовый файл. Этот файл через СОМ порт компьютера передается в ма-а-аленький блок сопряжения с передатчиком ООК 433МГц. Таким образом, происходит следующее: лежим на диване с ноутбуком - творим мигающую картинку - передаем ее на устройство и смотрим что получилось...
Для упрощения "творческого процесса создания визуального шедевра" и была создана описываемая ниже конфигурация. Ее назначение: облегчить разработку "визуального шедевра", сохранить его для последующего использования, отправить результат "куда-надо" для восприятия творения окружающими...
Однако, редактор посчитал эту программу "неинтересной для читателя" и всякое упоминание об "1С:Предприятии" из статьи ... пропало.
Ниже, как раз, и приводится "неопубликованное" в журнале. Конечно, лучше все это воспримется с основной статьей, но - год еще не прошел с даты публикации... так что вышеуказанная статья, отосланная в "Радио" появится здесь несколько позже...
В канун (тогда Нового) 2014 года захотелось как-то "разнообразить елочную иллюминацию" - в итоге реализовалась идея управления гирляндами с компьютера через СОМ порт по радиоканалу. Новый год благополучно наступил, а описание конструкции было предложено к публикации в журнал "Радио", где статья (даже в двух частях) и вышла - "Радио №11, 2014, стр.50" и "Радио №12, 2014, стр.34".
Коротко, смысл идеи такой: елочные гирлянды (или любые другие источники света) подключены к микроконтроллеру, "программы мигания гирлянд" в него можно загружать дистанционно - по радиоканалу (есть приемник ООК 433МГц). "Программки" сочиняются на компьютере и представляют собой обычный текстовый файл. Этот файл через СОМ порт компьютера передается в ма-а-аленький блок сопряжения с передатчиком ООК 433МГц. Таким образом, происходит следующее: лежим на диване с ноутбуком - творим мигающую картинку - передаем ее на устройство и смотрим что получилось...
Для упрощения "творческого процесса создания визуального шедевра" и была создана описываемая ниже конфигурация. Ее назначение: облегчить разработку "визуального шедевра", сохранить его для последующего использования, отправить результат "куда-надо" для восприятия творения окружающими...
Однако, редактор посчитал эту программу "неинтересной для читателя" и всякое упоминание об "1С:Предприятии" из статьи ... пропало.
Ниже, как раз, и приводится "неопубликованное" в журнале. Конечно, лучше все это воспримется с основной статьей, но - год еще не прошел с даты публикации... так что вышеуказанная статья, отосланная в "Радио" появится здесь несколько позже...
Конфигурация 1С:Предприятие 8 для создания программ управления гирляндами
Выше был описан «ручной» способ создания Программы управления (АП - здесь я считаю, что основная публикация в журнале у Вас под рукой). Способ довольно трудоемкий и содержит «крайне мало» творческих моментов, в основном присутствуют многочисленные рутинные процедуры. Для упрощения реализации творческих замыслов создателя новогодней иллюминации напрашивается программное решение, которое способно подготовить файл программы и передать его в блок сопряжения. Такая программа была разработана в самой популярной (на территории СНГ) среде объектно-ориентированного программирования «1С:Предприятие 8». (О бесплатной версии написано в информписьме №16652).
Конфигурация очень проста и содержит лишь несколько объектов:
Справочник.Кадры – содержит Кадры (АП - никакого отношения к учету заработной платы этот справочник отношения не имеет :)) из которых строится Программа. По сути справочник содержит данные из Таблицы.
Выше был описан «ручной» способ создания Программы управления (АП - здесь я считаю, что основная публикация в журнале у Вас под рукой). Способ довольно трудоемкий и содержит «крайне мало» творческих моментов, в основном присутствуют многочисленные рутинные процедуры. Для упрощения реализации творческих замыслов создателя новогодней иллюминации напрашивается программное решение, которое способно подготовить файл программы и передать его в блок сопряжения. Такая программа была разработана в самой популярной (на территории СНГ) среде объектно-ориентированного программирования «1С:Предприятие 8». (О бесплатной версии написано в информписьме №16652).
Конфигурация очень проста и содержит лишь несколько объектов:
Справочник.Кадры – содержит Кадры (АП - никакого отношения к учету заработной платы этот справочник отношения не имеет :)) из которых строится Программа. По сути справочник содержит данные из Таблицы.
Справочник.Команды – хранит команды фиксированной длины, в т.ч. описанные выше. Из формы элемента справочника нажатием на кнопку «Послать в СОМ» текущую команду можно отправить в блок сопряжения и далее в радиоканал.
Справочник.Настройки СОМ порта – предназначен для хранения отдельных настроек для перепрограммирования параметров СОМ порта компьютера. По кнопке «Применить на компьютере» из формы элемента справочника можно установить нужные параметры выбранного СОМ порта.
Документ.Программа – объект для создания Программы управления устройством. В шапке документа указываются: название Программы, скорость работы (длительность Кадра) и число повторов Программы. В табличной части документа построчно вводятся Кадры Программы для каждого канала устройства управления. В документе предусмотрен вывод печатной формы Программы и запись ее в файл как целиком, так и по каналам. Из документа файл Программы можно сразу отправить в блок сопряжения и далее в радиоканал.
Документ.Набор Программ – предназначен для формирования файла программы управления из нескольких отдельных Программ. Отдельные программы указываются в строках табличной части документа. В строках таблицы можно указать скорость работы Программы и число ее повторов, отключив значения, указанные в самой Программе. В документе предусмотрен вывод печатной формы Набора Программ и запись его в файл как целиком, так и по каналам. Из документа файл Набора Программ можно сразу отправить в блок сопряжения и далее в радиоканал.
Справочник.Настройки СОМ порта – предназначен для хранения отдельных настроек для перепрограммирования параметров СОМ порта компьютера. По кнопке «Применить на компьютере» из формы элемента справочника можно установить нужные параметры выбранного СОМ порта.
Документ.Программа – объект для создания Программы управления устройством. В шапке документа указываются: название Программы, скорость работы (длительность Кадра) и число повторов Программы. В табличной части документа построчно вводятся Кадры Программы для каждого канала устройства управления. В документе предусмотрен вывод печатной формы Программы и запись ее в файл как целиком, так и по каналам. Из документа файл Программы можно сразу отправить в блок сопряжения и далее в радиоканал.
Документ.Набор Программ – предназначен для формирования файла программы управления из нескольких отдельных Программ. Отдельные программы указываются в строках табличной части документа. В строках таблицы можно указать скорость работы Программы и число ее повторов, отключив значения, указанные в самой Программе. В документе предусмотрен вывод печатной формы Набора Программ и запись его в файл как целиком, так и по каналам. Из документа файл Набора Программ можно сразу отправить в блок сопряжения и далее в радиоканал.
Работа с программой (на примере создания Программы)
(АП - прошу прощения за тафтологию)
Рассмотрим процесс создания Программы управления для гирлянд в описанной выше конфигурации. Для простоты, возьмем задачку, рассмотренную в статье в журнале при «ручном» процессе создания Программы:
"Допустим, мы хотим, чтобы гирлянды первых трех каналов последовательно (друг за другом) плавно зажигались, а затем также плавно гасли, причем в момент гашения гирлянды предыдущего канала происходило плавное включение следующего."
Первый этап – настройка конфигурации под «наши» условия работы.
Запускаем программу. В верхней части экрана расположена панель действий, в «Сервисе» нажимаем кнопку «Настройка параметров программы» (см рис).
(АП - прошу прощения за тафтологию)
Рассмотрим процесс создания Программы управления для гирлянд в описанной выше конфигурации. Для простоты, возьмем задачку, рассмотренную в статье в журнале при «ручном» процессе создания Программы:
"Допустим, мы хотим, чтобы гирлянды первых трех каналов последовательно (друг за другом) плавно зажигались, а затем также плавно гасли, причем в момент гашения гирлянды предыдущего канала происходило плавное включение следующего."
Первый этап – настройка конфигурации под «наши» условия работы.
Запускаем программу. В верхней части экрана расположена панель действий, в «Сервисе» нажимаем кнопку «Настройка параметров программы» (см рис).
В открывшейся форме установки констант (см рис) необходимо настроить конфигурацию под наше устройство управления гирляндой: устанавливаем байт адреса устройства (126), второй байт адреса – признак загрузки Программы (1), максимальную длину программы (для микроконтроллера ATtiny2313 и шести каналов – 20 байт). Устанавливаем номер СОМ порта и его параметры из справочника «Настройки СОМ порта». Если СОМ порт, к которому подключен блок сопряжения в справочнике, не описан – делаем новую запись и применяем определенные нами параметры (9600 бит/сек, 8 бит, без контроля).
В константе «Результат отправить» определяем метод использования результата работы: отправить созданную Программу в определенный нами СОМ порт, либо записать Программу в виде текстового файла (как и в результате «ручного» процесса, описанного выше). В правой части формы определяем начальные адреса области EEPROM микроконтроллера, где будут располагаться команды Программы для шести каналов. По кнопке «Записать и закрыть» сохраняем настройки.
В константе «Результат отправить» определяем метод использования результата работы: отправить созданную Программу в определенный нами СОМ порт, либо записать Программу в виде текстового файла (как и в результате «ручного» процесса, описанного выше). В правой части формы определяем начальные адреса области EEPROM микроконтроллера, где будут располагаться команды Программы для шести каналов. По кнопке «Записать и закрыть» сохраняем настройки.
Второй этап – разработка Программы, заполнение параметров.
В левой части экрана, в панели навигации нажимаем гиперссылку «Программа» (см рис).
В левой части экрана, в панели навигации нажимаем гиперссылку «Программа» (см рис).
В открывшейся форме списка документов создаем новый документ по кнопке «Создать» (см рис).
Открывается форма документа, где мы будем описывать разрабатываемую нами Программу (см.рис).
Введем название нашего «творения», определим скорость его работы (выбором из справочника). Для указания числа повторов программы нам надо записать в справочник «Кадры», в группу «Повторы» новое значение «Пять повторов».
Введем название нашего «творения», определим скорость его работы (выбором из справочника). Для указания числа повторов программы нам надо записать в справочник «Кадры», в группу «Повторы» новое значение «Пять повторов».
Для этого нажимаем в документе кнопку выбора реквизита «Число повторов». Открывается справочник «Кадры» (см рис.).
В группе «Повторы» нет нужного нам значения. Создаем его копированием по клавише F9.
В группе «Повторы» нет нужного нам значения. Создаем его копированием по клавише F9.
В открывшейся форме элемента справочника «Кадры» (см. на рис.) вводим наименование «Пять», обозначение и кодировку – цифры «5».
Сохраняем элемент.
Сохраняем элемент.
Из формы списка выбираем созданный нами новый элемент (см.рис).
Таким образом «шапка» нашего документа заполнена, мы определили параметры исполнения Программы.
Таким образом «шапка» нашего документа заполнена, мы определили параметры исполнения Программы.
Третий этап – разработка и запись Программы, заполнение строк кадрами.
В табличной части документа вводим новую строку по кнопке «Добавить» (рис.справа).
В табличной части документа вводим новую строку по кнопке «Добавить» (рис.справа).
В колонке «Канал 0» новой строки вводим кадр «Нарастание» выбором из справочника (рис.).
Подобным образом вводим кадры для всех каналов строки. Вводим новые строки и заполняем их нужными кадрами (см.рис.).
Неиспользуемые каналы заполняем значением «Выключено». Сохраняем документ по кнопке «Записать объект (Ctrl+S)» или «Провести».
Неиспользуемые каналы заполняем значением «Выключено». Сохраняем документ по кнопке «Записать объект (Ctrl+S)» или «Провести».
Из формы документа можно сразу отправить коды Программы в устройство управления гирляндами по гиперссылке в панели навигации документа «Записать каналы 0, 1 и 2» (рис.)
По окончании исполнения текущей Программы, устройство управления включит созданную нами Программу и можно будет увидеть разработанное нами «чудо».
По окончании исполнения текущей Программы, устройство управления включит созданную нами Программу и можно будет увидеть разработанное нами «чудо».
Рассмотрим внимательнее созданный документ.
Созданный нами объект сохраняется в базе данных конфигурации, ему при сохранении присваивается номер и фиксируется дата создания. В будущем всегда можно вернуться к документу, исправить его, или создать его копию для дальнейшей работы.
Документ Программа можно использовать в составе набора Программ, причем в документе Набор Программ можно для каждой Программы указать свое число повторений и период смены Кадров, независимые от тех, что указаны в самой Программе.
Отметим реквизит «Длина» нашего документа: пять байтов для каждого канала образовались из байта, определяющего скорость смены Кадров, байта с числом повторений, двух байтов с Кадрами самой Программы и заключительного байта «Конец Программы», который программа подставляет «за нас».
Если число повторений или скорость в документе не указаны, то для Программы действуют значения, определенные в предыдущей исполненной Программе. При первом включении устройства определены следующие значения: число повторов равно четырем, период смены Кадров (скорость) равен 0,5 сек.
Созданный нами объект сохраняется в базе данных конфигурации, ему при сохранении присваивается номер и фиксируется дата создания. В будущем всегда можно вернуться к документу, исправить его, или создать его копию для дальнейшей работы.
Документ Программа можно использовать в составе набора Программ, причем в документе Набор Программ можно для каждой Программы указать свое число повторений и период смены Кадров, независимые от тех, что указаны в самой Программе.
Отметим реквизит «Длина» нашего документа: пять байтов для каждого канала образовались из байта, определяющего скорость смены Кадров, байта с числом повторений, двух байтов с Кадрами самой Программы и заключительного байта «Конец Программы», который программа подставляет «за нас».
Если число повторений или скорость в документе не указаны, то для Программы действуют значения, определенные в предыдущей исполненной Программе. При первом включении устройства определены следующие значения: число повторов равно четырем, период смены Кадров (скорость) равен 0,5 сек.