реклама на сайте
подробности

 
 
> Програмно задать поведение двигателей в С.
Jenya7
сообщение Jul 17 2017, 05:53
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Есть системы с довольно сложным поведением.

Скажем есть система где

1. пользователь нажимает на кнопку ОТКРЫТЬ
2. Мотор №1 начинает двигаться - открывается крышка - мотор останавливается достигнув концевого выключателя №1.
3. Мотор №2 начинает двигаться - выезжает экран - мотор останавливается достигнув концевого выключателя №2.

4. пользователь нажимает на кнопку ЗАКРЫТЬ
5. Мотор №2 начинает двигаться - экран заезжает обратно - мотор останавливается достигнув концевого выключателя №3.
6. Мотор №1 начинает двигаться - закрывается крышка - мотор останавливается достигнув концевого выключателя №4.

Естественно на любом участке пути пользователь может применять команды СТОП, ОТКРЫТЬ, ЗАКРЫТЬ и логика отрабатывает команды в соответствии с положением моторов.
То есть если нажать на кнопку ОТКРЫТЬ при закрытой крышке - начнет двигаться Мотор №1. А если нажать на кнопку ОТКРЫТЬ в середине пути - начнет двигаться Мотор №2.
И отслеживаются все положения - скажем Мотор №2 не может начать движение пока крышка полностю не открыта (концевик №1 нажат)

До сих пор я этот сценарий жестко кодировал в микроконтроллере и все было хорошо.
Сейчас есть требование сделать эти сценарии движения програмируемые. (Пользователь загружает скрипт.)
У меня в принципе есть проект где пользователь по UART заливает скрипт я его обрабатываю и произвожу действия. Но там простой PLC - по входным условиям
(значениям на аналоговых и дигитальных входах) я выставляю значения на выходах.

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

Сообщение отредактировал Jenya7 - Jul 17 2017, 06:22
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Jenya7   Програмно задать поведение двигателей в С.   Jul 17 2017, 05:53
- - arhiv6   Почитайте про конечные автоматы, затем нарисуйте д...   Jul 17 2017, 06:29
|- - Jenya7   Цитата(arhiv6 @ Jul 17 2017, 12:29) Почит...   Jul 17 2017, 06:52
- - ikm   Цитата(Jenya7 @ Jul 17 2017, 08:53) В дан...   Jul 17 2017, 07:10
|- - Jenya7   Цитата(ikm @ Jul 17 2017, 13:10) Я вот то...   Jul 17 2017, 07:23
- - _pv   ну так возьмите любой понравившийся скриптовый язы...   Jul 17 2017, 08:13
|- - Jenya7   Цитата(_pv @ Jul 17 2017, 14:13) ну так в...   Jul 17 2017, 08:52
- - AlexandrY   Цитата(Jenya7 @ Jul 17 2017, 08:53) В дан...   Jul 17 2017, 09:55
|- - Jenya7   Цитата(AlexandrY @ Jul 17 2017, 15:55) Да...   Jul 17 2017, 10:15
|- - AlexandrY   Цитата(Jenya7 @ Jul 17 2017, 13:15) То ес...   Jul 17 2017, 10:57
- - sigmaN   ЦитатаПо сути это stateless подход. Я считаю его н...   Jul 17 2017, 11:00
|- - AlexandrY   Цитата(sigmaN @ Jul 17 2017, 14:00) По по...   Jul 17 2017, 14:31
- - sigmaN   ЦитатаНе теории помогают программировать сложные в...   Jul 17 2017, 18:30
|- - AlexandrY   Цитата(sigmaN @ Jul 17 2017, 21:30) Т.е. ...   Jul 17 2017, 20:21
- - Trump   Отдавать пользователю возможность управления автом...   Jul 17 2017, 19:02
|- - sigmaN   Цитата(Trump @ Jul 17 2017, 22:02) Отдава...   Jul 17 2017, 19:40
- - sigmaN   Ок, я тут спорить не буду, 1000 сигналов никогда н...   Jul 17 2017, 21:08


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 1st July 2025 - 14:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01362 секунд с 7
ELECTRONIX ©2004-2016