Добавлено: Сб Авг 25, 2012 6:37 pm Заголовок сообщения: Мастер сети RS485 с GSM-модулем
Необходима разработка схемы, печатной платы и изготовление опытного образца модуля под условным названием “Программируемый мастер сети RS485 c GSM”.
Результатом работы является:
1. Принципиальная схема и описание назначения всех элементов схемы и особенностей работы (единственное требование к формату – это должен быть не jpg/pdf, а формат одной из систем автоматизированного проектирования, например DipTrace).
2. Чертеж печатной платы, подготовленный для контрактного производства (с маской, в Gerber-формате).
Функционально устройство похоже на GSM-сигнализацию. Основное отличие – это возможность выполнения пользовательских сценариев. Сценария задаются в виде программного кода на интерпретируемом языке lua, который выполняется на MCU типа STM32F103*
Вызов выполнения сценария может происходить по таким событиям:
1. По изменению значения подключенных датчиков
2. По наступлению момента времени
3. При пропадании/восстановлении питания 220В.
Сценарий может выполнять такие действия:
1. Отправка modbus-команд на заданый ведомый модуль сети RS485
2. Установка состояния дискретных выходов
3. Отправка через GSM модуль SMS c заданым сообщением.
4. Отправка через GSM модуль собщения на заданный адрес в интернете через GPRS.
Устройство позволяет подключить:
1. До 128 ведомых модулей в сети RS485 - устройство является мастером RS485 сети
2. До 10 аналоговых входов (4-20 мА)
3. До 10 дискретных входов (сухой контакт)
4. До 10 дискретных выходов (0..5В)
5. Множество датчиков температуры 1-Wire - устройство является мастером Microlan-сети (1-Wire)
6. 1 датчик влажности SHT10
В процессе работы устройство производит опрос подключенных датчиков через заданные интервалы (от 1 сек до 1 часа) и
периодически отправляет накопленные данные с помощью GSM-модуля на заданный адрес в интернете.
До момента отправки на адрес в интернете накопленные данные сохраняются во внутренней памяти модуля.
При пропадании питания накопленные данные не должны исчезать.
Связь с компьютером
Устройство подключается к компьютеру через Ethernet-порт с целью:
1. Получения с устройства состояние подключенных датчиков
2. Обновления списка подключенных модулей RS485 / датчиков 1-Wire
3. Заливки кода сценариев на интерпретируемом языке lua.
4. Синхронизации времени встроенных часов устройства (RTC) с временем компьютера.
Питание
Питание устройства осуществляется от сети 220В. Также в устройстве должен быть встроенный аккумулятор, на который переключается питание при пропадани 220В.
Индикаторы
Для каждого дискретного входа/выхода на плате должен быть светодиод.
Для отображения информации о состоянии подключенных датчиков, уровне сигнала GSM, уровне заряда батареи и т.д. будет использоваться какой-либо из доступных дисплеев от мобильных телефонов (различимый и не выгорающий на солнце).
Отображаться светодиоды и дисплей будет через прозрачную крышку герметичного корпуса.
Работа мастера сети RS485 (ModBus)
Режим работы – RTU.
Изначально модуль имеет адрес 250. Для его смены в реальный выполняется команда Write Single Register (0x06) для установки реального адреса.
Зарегистрирован: 17.11.2008 Сообщения: 351 Откуда: Новосибирск
Добавлено: Пн Авг 27, 2012 9:17 am Заголовок сообщения:
Не понятно, это рекламно-учебно-тренировочный модуль... Для внедрения-изучения Lua ?
"Сценария задаются в виде программного кода на интерпретируемом языке lua, который выполняется на MCU типа STM32F103" Кем задаются ? И куды задаются ?
"...и описание назначения всех элементов схемы и особенностей работы" То есть написание литературной брошюрки от А до Я ...?
И потом ответы на многочисленные вопросы пользователя(пользователей)?? Так для этого есть учебный ЦЕНТР, да в том же Prosofte.
В принципе для энтих игр есть Prosoft & Fastwel с контроллерами типа CPM712-01 Правда язык у них там и Win и свой....
А реально, если нужно, конечно, устройство типа собирателя и GSM охранки - то уменьшить количество хотелок на один бедный STM32...
Добавлено: Пн Авг 27, 2012 9:42 am Заголовок сообщения:
Alniko писал(а):
Не понятно, это рекламно-учебно-тренировочный модуль... Для внедрения-изучения Lua ?
"Сценария задаются в виде программного кода на интерпретируемом языке lua, который выполняется на MCU типа STM32F103" Кем задаются ? И куды задаются ?
Нет, это реальный модуль. Сценарии редактируются пользователем в виндовс-программе, и после редактирования пользователь нажимает кнопку "Обновить" и сценарии переводятся в текст скрипта на lua и заливаются в контроллер.
Alniko писал(а):
"...и описание назначения всех элементов схемы и особенностей работы" То есть написание литературной брошюрки от А до Я ...?
Это для меня, чтобы я понимал, для чего каждый элемент.
Alniko писал(а):
И потом ответы на многочисленные вопросы пользователя(пользователей)??
Какие вопросы, каких пользователей? Ответить на вопросы надо только мне, по схемотехнике.
Alniko писал(а):
А реально, если нужно, конечно, устройство типа собирателя и GSM охранки - то уменьшить количество хотелок на один бедный STM32...
Так называемые "GSM охранки" не позволяют нормально и удобно отредактировать реакции на изменения значения датчиков и т.д.
Можно и без lua, если есть возможность собирать текст программы (прошивки) и заливать его в устройство после редактирования в виндовс-программе.
lue удобен тем, что не нужно компилировать скрип в виндовс-программе перед отправкой в контроллер.
Зарегистрирован: 17.11.2008 Сообщения: 351 Откуда: Новосибирск
Добавлено: Пн Авг 27, 2012 10:41 am Заголовок сообщения:
Luna неудобна тем, что для неё нужно будет как-то предусмотреть вход в прогу, написанную скорее всего на Си.
Цитата:
... в текст скрипта на lua и заливаются в контроллер.
Крута, конечна...Если применять "удобный" скриптовый, то и контроллер должен быть адаптирован(мощный).
А так, вы изменили общий код проги скриптом и контроллер перестал работать...
Цитата:
и заливать его в устройство после редактирования в виндовс-программе.
Можно пойти другим путем - заливать целиком прошивку, но ее прежде надо скомпилировать, а можно ли компилятор распространять без отчислений - еще не изучал этот вопрос.
Alniko писал(а):
И что же здесь понимается под виндовс-программой?
Это моя задача - сделать программу с удобным и наглядным интерфейсом создания/редактирования сценариев и их трансляцию в код скрипта.
Просто сейчас модно называть "скриптовые языки". Похожие оне и раньше были и у Siemensa и у telemecanique и у прочих. На компе набиралась(исправлялась) псевдографическая комбинация, которая компилировалась и отправлялась по связи на управляющий контроллер.... И можно было также подправить тайминги и вкл/выкл реле с пультика оператора(с примитивным экранчиком), кот. тож можно было подключить к контроллеру(крейту) И было это лет 30 назад...
А на предлагаемом(обсуждаемом) Pawne спец научился возвращать только одно число.
Это и рядом не стоит с означенной многоликой задачей...
Если хочется на Windowse попрактиковаться, то можно было бы типа на VB али Delphi изобразить "скрипт" и отсылать команды (словами, пакетами и подобным) А контроллер их выполнит (БЕЗ изменения основного кода программы). Тогда он(контроллер) обязан работать...
Последний раз редактировалось: Alniko (Пн Авг 27, 2012 8:24 pm), всего редактировалось 1 раз
Можно конечно и свой текст собрать на стороне программы виндовс, и разбирать его каким-то образом на стороне МК.
Но лучше пользоваться готовыми наработками.
Alniko писал(а):
А на предлагаемом(обсуждаемом) Pawne спец научился возвращать число.
Если можно вызвать функцию срипта в контроллере и скрипт имеет доступ к возможностям МК - остальное дело кодинга.
Alniko писал(а):
Если хочется на Windowse попрактиковаться, то можно было бы типа на VB али Delphi изобразить "скрипт" и отсылать команды (словами, пакетами и подобным)
Так нужно как раз чтобы контроллер выполнял залитый скрипт без участия ПК.
Так нужно как раз чтобы контроллер выполнял залитый скрипт без участия ПК.
Так он и будет выполнять СВОЮ программу(отлаженную не за один день) с добавленными параметрами-данными с компа, записанными в опред.область...
Цитата:
Если можно вызвать функцию срипта в контроллере и скрипт имеет доступ к возможностям МК - остальное дело кодинга.
Помнитца нужно было написать прогу толи для PICa толи для AVR...И подвернулся MikroBasic for PIC (и для AVR есть) И очень, понимаешь, "удобный" - пара- тройка строк текста на Вasice "- и остальное дело кодинга". Написал как в примере(было уже дано в описании) - скомпилировал, прошил - НЕ работает !.... Стал разбираться (через дизассемблер) - код охиренно большой(и не рабочий!). Оне туда чего тольки не засунули, на все случаи жизни.... Там простая команда выполняется с кучей условий и междометий... Выкинул тогда энтот MikroBasic for
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах