Skip to content

Zeppelinen-DevOps/relay_box

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

relay_box

emulator relay unit with control interface rs232

Параметры порта rs232

115200 8N1
hardware/software control off

Исполняемые команды

Все команды представляют собой символьные строки с байтами 0x0d 0x0a на конце

1. "SET_ON X Y\r\n" - команда "замкнуть реле" с номером X на время равное Y секунд (если Y=0 - постоянно)

    Ответом на команду будет символьная строка "SET_ON X Y : OK\r\n" - если команда распознана и параметры команды валидные (X=1..8, Y=0..255);
    в противном случае ответ будет таким "SET_ON X Y : ERROR\r\n"

2. "SET_OFF X Y\r\n" или "SET_OFF X\r\n" - команда "разомкнуть реле" с номером X (параметр Y не имеет значения и может отсутствовать)

    Ответом на команду будет символьная строка "SET_OFF X Y : OK\r\n" - если команда распознана, параметры команды валидные (X=1..8, Y=0..255);
    в противном случае ответ будет таким "SET_OFF X Y : ERROR\r\n"

3. "GET_STAT X\r\n" - команда "запрос статуса реле" с номером X

    Ответом на команду будет символьная строка "GET_STAT X : Z\r\n" - если команда распознана, параметры команды валидные (X=1..8),
    где Z=1 - если реле замкнуто, Z=0 - если реле разомкнуто;
    в противном случае ответ будет таким "GET_STAT X : ERROR\r\n"

4. "GET_STAT\r\n" - команда "запрос статуса всех реле"

    Ответом на команду будет символьная строка "GET_STAT : H\r\n" - если команда распознана, где H - байт статуса всех реле,
    то есть позиционный код статуса каждого реле:
	* 1 в нулевом разряде - реле 1 - замкнуто, 0 в нулевом разряде - реле 1 - разомкнуто,
	* 1 в первом - реле 2 - замкнуто, 0 в первом разряде - реле 2 - разомкнуто,
	* .......
	* 1 в седьмом разряде - реле 8 - замкнуто, 0 в седьмом разряде - реле 8 - разомкнуто;
    если команда не распознана ответ будет таким "GET_STAT : ERROR\r\n"

5. "SET_ALL X1,Y1 X2,Y2 X3,Y3 X4,Y4 X5,Y5 X6,Y6 X7,Y7 X8,Y8\r\n" - команда "установить реле":

* с номером 1 в X1 (X1=0 - разомкнуть реле, X1=1 - замкнуть реле на время Y1, X1=X - оставить у реле предидущее состояние, то есть не трогать его),
* с номером 2 в X2 (X2=0 - разомкнуть реле, X2=1 - замкнуть реле на время Y2, X2=X - оставить у реле предидущее состояние, то есть не трогать его),
* с номером 3 в X3 (X3=0 - разомкнуть реле, X3=1 - замкнуть реле на время Y3, X3=X - оставить у реле предидущее состояние, то есть не трогать его),
* с номером 4 в X4 (X4=0 - разомкнуть реле, X4=1 - замкнуть реле на время Y4, X4=X - оставить у реле предидущее состояние, то есть не трогать его),
* с номером 5 в X5 (X5=0 - разомкнуть реле, X5=1 - замкнуть реле на время Y5, X5=X - оставить у реле предидущее состояние, то есть не трогать его),
* с номером 6 в X6 (X6=0 - разомкнуть реле, X6=1 - замкнуть реле на время Y6, X6=X - оставить у реле предидущее состояние, то есть не трогать его),
* с номером 7 в X7 (X7=0 - разомкнуть реле, X7=1 - замкнуть реле на время Y7, X7=X - оставить у реле предидущее состояние, то есть не трогать его),
* с номером 8 в X8 (X8=0 - разомкнуть реле, X8=1 - замкнуть реле на время Y8, X8=X - оставить у реле предидущее состояние, то есть не трогать его)
    Ответом на команду будет символьная строка "SET_ALL X1,Y1 X2,Y2 X3,Y3 X4,Y4 X5,Y5 X6,Y6 X7,Y7 X8,Y8 : OK\r\n" - если команда распознана и параметры команды валидные (Yn=0..255);
    в противном случае ответ будет таким "SET_ALL X1,Y1 X2,Y2 X3,Y3 X4,Y4 X5,Y5 X6,Y6 X7,Y7 X8,Y8 : ERROR\r\n"

Например:

Команда - "SET_ALL 1,0 1,10 X,0 0,0 1,0 X,0 X,0 X,0\r\n" будет означать следующие действия :

    * реле 1 замкнуть постоянно
    * реле 2 замкнуть на 10 секунду
    * реле 3 не трогать
    * реле 4 разомкнуть
    * реле 5 замкнуть постоянно
    * реле 6 не трогать
    * реле 7 не трогать
    * реле 8 не трогать
Если команда распознана и параметры команды валидные (Xn=0,1,X Yn=0..255), ответ должен выглядеть так :
    "SET_ALL 1,0 1,10 X,0 0,0 1,0 X,0 X,0 X,0 : OK\r\n"
в противном случае так :
    "SET_ALL 1,0 1,10 X,0 0,0 1,0 X,0 X,0 X,0 : ERROR\r\n"

About

emulator relay unit with control interface rs232

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 96.1%
  • Makefile 3.9%