Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Програмно задать поведение двигателей в С.
|
|||
|---|---|---|---|
|
#18+
Есть системы с довольно сложным поведением. Скажем есть система где 1. пользователь нажимает на кнопку ОТКРЫТЬ 2. Мотор №1 начинает двигаться - открывается крышка - мотор останавливается достигнув концевого выключателя №1. 3. Мотор №2 начинает двигаться - выезжает экран - мотор останавливается достигнув концевого выключателя №2. 4. пользователь нажимает на кнопку ЗАКРЫТЬ 5. Мотор №2 начинает двигаться - экран заезжает обратно - мотор останавливается достигнув концевого выключателя №3. 6. Мотор №1 начинает двигаться - закрывается крышка - мотор останавливается достигнув концевого выключателя №4. Естественно на любом участке пути пользователь может применять команды СТОП, ОТКРЫТЬ, ЗАКРЫТЬ и логика отрабатывает команды в соответствии с положением моторов. То есть если нажать на кнопку ОТКРЫТЬ при закрытой крышке - начнет двигаться Мотор №1. А если нажать на кнопку ОТКРЫТЬ в середине пути - начнет двигаться Мотор №2. И отслеживаются все положения - скажем Мотор №2 не может начать движение пока крышка полностю не открыта (концевик №1 нажат) До сих пор я этот сценарий жестко кодировал в микроконтроллере и все было хорошо. Сейчас есть требование сделать эти сценарии движения програмируемые. У меня в принципе есть проект где пользователь по UART заливает скрипт я его обрабатываю и произвожу действия. Но там простой PLC - по входным условиям (значениям на аналоговых и дигитальных входах) я выставляю значения на выходах. В данном случае никак не соображу какую структуру создать под сценарий движения и как учитывать все логические условия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2017, 08:54 |
|
||
|
Програмно задать поведение двигателей в С.
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2017, 09:07 |
|
||
|
Програмно задать поведение двигателей в С.
|
|||
|---|---|---|---|
|
#18+
OoCc конечный автомат да. пожалуй. но какую структуру передать в конечный автомат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2017, 09:13 |
|
||
|
Програмно задать поведение двигателей в С.
|
|||
|---|---|---|---|
|
#18+
jenya7, Конечный автомат описывается табличкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2017, 09:50 |
|
||
|
Програмно задать поведение двигателей в С.
|
|||
|---|---|---|---|
|
#18+
OoCcjenya7, Конечный автомат описывается табличкой. почитайте про синтез конечных автоматов, есть Мили и Мура, книжка автора Баранова, например. "Синтез конечных автоматов" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2017, 12:25 |
|
||
|
Програмно задать поведение двигателей в С.
|
|||
|---|---|---|---|
|
#18+
MasterZivOoCcjenya7, Конечный автомат описывается табличкой. почитайте про синтез конечных автоматов, есть Мили и Мура, книжка автора Баранова, например. "Синтез конечных автоматов" Не морочь ТС голову. Для вопроса ТС ничего читать ненужно - хватит простенькой логической таблички которая имплементируется в простом массиве. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2017, 13:27 |
|
||
|
Програмно задать поведение двигателей в С.
|
|||
|---|---|---|---|
|
#18+
jenya7До сих пор я этот сценарий жестко кодировал в микроконтроллере и все было хорошо. Сейчас есть требование сделать эти сценарии движения програмируемые. У меня в принципе есть проект где пользователь по UART заливает скрипт я его обрабатываю и произвожу действия. Но там простой PLC - по входным условиям (значениям на аналоговых и дигитальных входах) я выставляю значения на выходах. В данном случае никак не соображу какую структуру создать под сценарий движения и как учитывать все логические условия. Странно что ты кодил PLC но не исследовал возможности самого компиллятора. По сабжу верно сказали. Бери табличку. Делай в одной колонке состояния и условия. А в другой - переходы. По поводу инструмента. Способов - масса. Самый близкий к языку конечно полиморфизм. Но у нас - язык "C". Поэтому КМК стоит подождать пятницы. Просто самые вкусные темы ждут конца недели. Будем эмулировать полиморфизм на сях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2017, 23:17 |
|
||
|
Програмно задать поведение двигателей в С.
|
|||
|---|---|---|---|
|
#18+
mayton...Просто самые вкусные темы ждут конца недели. Будем эмулировать полиморфизм на сях.Косвенную адресацию изобрели 50лет назад даже на ассемблере. Изобретатели.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2017, 23:26 |
|
||
|
Програмно задать поведение двигателей в С.
|
|||
|---|---|---|---|
|
#18+
Балин.... Зяма! Всю контору спалил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2017, 23:47 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=19&tid=1340334]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
65ms |
get topic data: |
14ms |
get forum data: |
2ms |
get page messages: |
71ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 197ms |

| 0 / 0 |
