Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
19.05.2009, 10:20
|
|
Прописка
Регистрация: 07.07.2005
Сообщений: 111
Сказал спасибо: 2
Сказали Спасибо 12 раз(а) в 7 сообщении(ях)
|
Сообщение от Mixer79
|
kos_ua, я думаю многие захотят сами создавать свои функциональные блоки. Вы наверно для каждого уже существующего блока писали свою функцию? Может вы дадите нам "вводную" (т.е. переменные для этой функции), а мы сами наполним библиотеку блоков?
|
Привет всем!
Попытаюсь рассказать как это работает.
Всю программную часть IDE я реализовую на DELPHI.
Во превых выложу кусочек софта и попробую его описать.
После прочтения Вами текстового файла могу сказать следующее....
Я так думаю что СИ код должен выглядеть следующим образом:
1. Перезапись во входные перемнные текущей функции всей инфы.
2. Вызов текущей функции.
и так по всем функциям.
Основным моментом есть следующее:
Ввиду того что я ввел понятие входа EN(разрешение работы) то возникли некоторые проблемы в реализации.
На Делфи я реализовал этот момент так:
Если вход EN=1 или он вообще отключен то то функция просто выполняется, EN=0 и вход активен на схеме то выходной переменной функции присваивается значение NUL(Это возможно потому что переменная имеет тип VARIANT). То есть на СИ прийдется реализовывать все переменные ввите нового типа. VARIANT представляет собой запись из двух значений:
1. Само значение переменной.
2. Тип данных этой переменной.
Если в типе данных стои 0 значит переменная не определена и равна NUL.
Соответсвенно следующая функция которая возьмет эту переменную как результат работы предыдущей функции она увидит что фнкция не выполнянлась и в итоге сама не будет выполняться....
Сорри много писать...но потихоньку я думаю мы разберемся со всей этой трахамудией)))
Седня выложу пример сишного кода.
Прикрепленный файл: 7447201.rar
DEMO3.
В новой версии IDE видно как работает тип VARIANT:
толстые зеленые линии - 1 сигнал
толстые черные линии - 0 сигнал
тонкие черные линии - сигнал не определен, тип VARIANT=NULL, последующая функция не выполняется.
Прикрепленный файл: 8559878.rar
Последний раз редактировалось mike-y-k; 14.04.2022 в 22:48.
Причина: 6.6
|
|
|
|
19.05.2009, 13:42
|
|
Частый гость
Регистрация: 22.08.2007
Сообщений: 43
Сказал спасибо: 3
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Сообщение от picavr
|
Да поляцкая серия корпучов Z10x на DIN как раз покатят или аналогичные...
Головной модуль в Z100 а остальные в корпусах поменьше.
|
А не подскажет ли кто, где можно такие корпуса в России заказать поштучно? Ну и чтоб подешевше конечно
Сообщение от picavr
|
Моё видение схемы...
|
Опять таки это мое субъективное мнение. На плате центрального модуля оставил бы только контроллер, частотозадающие цепи, I2C, SPI, USART питание и 74574. Это то, что нужно практически всегда. А все остальное на периферийные платы и добавлять по необходимости.
DAT0-7 часто выходит на внешние разъемы. При этом нет никой защиты от "внешних воздействий". А если война? И погорит у нас вся плата целиком. Может их тоже через буферы?
ADCINPUT тоже не защищены.
Предполагается, что на шину DAT0-7 будут вешаться только указанные устройства или можно будет подключать дополнительные модули? В таком случае как ограничивается нагрузочная способность шины?
Прикрепленный файл: 7557311.pdf
|
|
|
|
19.05.2009, 14:15
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
|
Сообщение от Mixer79
|
на шину DAT0-7 можно будет подключать дополнительные модули?
|
Если взглянуть внимательно, то шина DAT0-7 выходит только на разъём для подключения графического модуля, который стоит внутри коробки и его не обязательно вешать (думаю это понятно и так было), зачем задавать вопрос который собственно ясен из схемы?
Шина SPI так же выведжена наружу (предполагается по соединение SPI с внешними модулями) но конечно при желании можно повесить буферы для SPI...
Входы АЦП выведены наружу, потому что задачи для АЦП возникают самые различные и придётся под каждую делать свою входную часть(свой модуль) это и термопары, тензодатчики, датчики давления, темпрературы, .... итд... итд... итд...
Согласен, их можно защитить через RC цепи, согласен, упустил этот момент, исправлю...
Сообщение от Mixer79
|
На плате центрального модуля оставил бы только контроллер, частотозадающие цепи, I2C, SPI, USART питание и 74574. Это то, что нужно практически всегда.
|
И потом придётся добавлять модуль с оптронами и выходными ключами?... в моём варианте модуль самодостаточен для изготовления управляющего блока с 32 входами и 16 выходами + ЖКИ + кнопки на модуле. Минимальные задачи сможет выполнять только один модуль без дополнительных. (кроме питания, но питание иногда уже есть в шкафах управления)
Я исходил из максимальной функциональности... Если конечно задатся целью для максимализации прибыли (типа больше модулей - больше денег) тогда ваш вариант лучше...
Я выложил свою схему, потому что уже давно использую подобную, а эта родилась как новый вариант. Просто что бы народ мог взять что то себе, никто ведь не заставляет повторять дословно.
Правда у меня обычно все платы стоят в отдельном металлическом ящике. Ну а так же что бы покритиковали и внесли конструктивные идеи..
Есть идея изготавливать платы и набивать их компонентами, вставлять в корпус, для тех кто не хочет этим заниматся а программу сможет написать сам...
Прикрепленный файл: 7557311.pdf
|
|
|
|
19.05.2009, 14:39
|
|
Частый гость
Регистрация: 22.08.2007
Сообщений: 43
Сказал спасибо: 3
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
По поводу схемы, извините уж если что не так... Не хотел обидеть.
А по поводу конструктива, я бы всетаки поспорил. Ведь решаемые задачи не всегда одинаковые. Иногда нужно 3 датчика и по ним управлять десятком устройств, а иногда и для 2 устройств необходимо с десяток датчиков. Мы часто сравниваем наш контроллер с контроллерами SIEMENS. Тогда ваш вариант больше похож на SIEMENS S7-200. Но зачем переплачивать за то, что не используешь (детали, место на плате)? Пусть немного, но переплачиваешь.
|
|
|
|
19.05.2009, 14:46
|
|
Прописка
Регистрация: 07.07.2005
Сообщений: 111
Сказал спасибо: 2
Сказали Спасибо 12 раз(а) в 7 сообщении(ях)
|
Сообщение от Mixer79
|
По поводу схемы, извините уж если что не так... Не хотел обидеть.
А по поводу конструктива, я бы всетаки поспорил. Ведь решаемые задачи не всегда одинаковые. Иногда нужно 3 датчика и по ним управлять десятком устройств, а иногда и для 2 устройств необходимо с десяток датчиков. Мы часто сравниваем наш контроллер с контроллерами SIEMENS. Тогда ваш вариант больше похож на SIEMENS S7-200. Но зачем переплачивать за то, что не используешь (детали, место на плате)? Пусть немного, но переплачиваешь.
|
ПОлностью с Вами согласен.....городить на одной плате или в одном корпусе мега универсальную штуку с кучей переферии не целесообразно....лучше расширяться до нужного колличества.....кстати и дешевле будет....для сравнения возьмите от SIEMENS серию ET-200M и серию ET-200S....так последняя будет дешевле, так как на борту с оной стороны меньше сигналов а с другой стороны можно точнее выбрать колличество модулей...ИМХО
|
|
|
|
19.05.2009, 15:51
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
|
Сообщение от Mixer79
|
По поводу схемы, извините уж если что не так... Не хотел обидеть.
|
Да всё ОК .. нормальный процесс выработки общей концепции ))))
Сообщение от Mixer79
|
Ведь решаемые задачи не всегда одинаковые. Иногда нужно 3 датчика и по ним управлять десятком устройств, а иногда и для 2 устройств необходимо с десяток датчиков.
|
Может вы и правы.. просто у меня обычно возникали задачи не менее 8-12 датчиков и 8-10 выходов..
Наверное есть смысл делать несколько модификаций
в корпусах Z102, Z101 и Z104 и не запаивать не требующиеся компоненты входов или выходом, I2C или SPI память, в общем лиш то что необходимо в данной конструкции...
|
|
|
|
21.05.2009, 11:22
|
|
Частый гость
Регистрация: 22.08.2007
Сообщений: 43
Сказал спасибо: 3
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Ну, настал черед и меня покритиковать.
IP корпусов промышленных контроллеров позволяют не пролетать внутрь разве что предметам размером больше 5 мм. В принципе, платы можно вообще крепить без корпуса, защитив их лаком. Однако остается опасность случайно коснуться или закоротить силовые линии, которые выведут контроллер из строя.
Конечно наилучшим вариантом будет покупка дешевого промышленного корпуса. И эстетично и удобно...
А для особо жадных (типа меня), можно изготовить корпус из куска короба для кабелей ( Это вариант контроллера собранного на коленках Просто чтоб прикрыть наготу плат)
В силу специфики своей работы, думаю у многих используются эти короба. А куски такого размера просто выбрасываются. Верхнюю крышку можно приспособить в качестве передней панели или панели индикации. Платы внутри собрать бутербродом, одна на другую с помощью сквозных разъемов или шлейфов. В последнем случае между платами поставить стойки (их можно изготовить из корпусов старых авторучек). Если контроллер будет крепиться непосредственно к стенке шкафа, нужно просверлить ушки. Для варианта крепления на DIN рейку, можно попробовать вариант показанный на рисунках.
Усеченные цилиндры для крепления к рейке можно сделать из колпачков от тюбиков зубной пасты. Насколько крепким будет такое крепление, сказать не могу - не пробовал. Думаю, если хорошенько затянуть, будет нормально.
Для клемников придется сделать пропил в боковой стенке на высоте монтажной платы. Для монтажа проводов полевых кабелей, предполагаю использовать относительно недорогие винтовые клемники серии 15EDG. 15EDGV-R впаивают на плату, а 15EDGK-3.5-03, ответная часть к клеммам.
-- Прилагается рисунок: --
второй
-- Прилагается рисунок: --
и третий
-- Прилагается рисунок: --
Все время было интересно посмотреть, как же это сделано "у них". Вчера я удовлетворил свое любопытство. Фотоотчет в прилагаемом архиве. Размер файлов оставлял по содержанию. (Всего 7,5Мб)
Прикрепленный файл: 528406.zip
Последний раз редактировалось mike-y-k; 14.04.2022 в 22:49.
Причина: 6.6
|
|
|
|
21.05.2009, 12:07
|
|
Прописка
Регистрация: 07.07.2005
Сообщений: 111
Сказал спасибо: 2
Сказали Спасибо 12 раз(а) в 7 сообщении(ях)
|
Сообщение от Mixer79
|
Все время было интересно посмотреть, как же это сделано "у них". Вчера я удовлетворил свое любопытство. Фотоотчет в прилагаемом архиве. Размер файлов оставлял по содержанию. (Всего 7,5Мб)
|
Что касается подобного оборудования, то я его много раз разбирал и ремонтровал...подобные корпуса даже можно купить в Москве....Некоторые есть на складе некоторые под заказ до 3 месяцев....Даю ссылку
http://www.sanhe.ru/plastic_enclosur...trol_case/180/
Прикрепленный файл: 528406.zip
|
|
|
|
21.05.2009, 13:38
|
|
Частый гость
Регистрация: 22.08.2007
Сообщений: 43
Сказал спасибо: 3
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Считаю, что корпус должен стоить как минимум на порядок дешевле устройства, которое в него монтируется.
Как дела? У кого что получается?
Или тема благополучно закрылась?
Последний раз редактировалось mike-y-k; 14.04.2022 в 22:49.
Причина: 6.6
|
|
|
|
27.05.2009, 16:37
|
|
Прописка
Регистрация: 07.07.2005
Сообщений: 111
Сказал спасибо: 2
Сказали Спасибо 12 раз(а) в 7 сообщении(ях)
|
Сообщение от Mixer79
|
Как дела? У кого что получается?
Или тема благополучно закрылась?
|
Привет.....Я заканчиваю софт....думаю что в пятницу выложу очередную версию.
Что касается конструктива думаю что буду делать два варианта ПЛК:
1. вариант на DIN рейку
2. вариант для установки на лицевую панель щита.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:52.
|
|