Size: a a a

2021 August 06

AS

Alexander Sudalin in ru_ASUTP
У телеофиса есть, у tibbo
источник

D

Dim in ru_ASUTP
гореть синем пламенем телеофису с его питоновскими модемами от Telit!
источник

СМ

Сано Мо in ru_ASUTP
вот такую поставлю если нормально будет? нареканий нет?
NPort IA5250A
источник

D

Dim in ru_ASUTP
ставь
проверяй
потом отпишешься
источник

AP

Alexander Polikushin in ru_ASUTP
Если Modbus RTU/ASCII (RS-232/422/485) в Modbus TCP то лучше взять MGATE
источник

AP

Alexander Polikushin in ru_ASUTP
Быстрее работает
источник

СМ

Сано Мо in ru_ASUTP
Можно ещё вот такую хреновину поставить если только из 485 в Ethernet.
У ОВНа вышел новый МКОН
источник

СМ

Сано Мо in ru_ASUTP
А мне как раз 485 в Ethernet надо.
источник

D

Dim in ru_ASUTP
нафига тебе эзернет?
источник

D

Dim in ru_ASUTP
кто пакеты будет формировать?
источник

AP

Alexander Polikushin in ru_ASUTP
Плюс получаем именно Modbus TCP кадр, а не Modbus RTU over TCP
источник

СМ

Сано Мо in ru_ASUTP
Это заказчику надо. Техзадание Ethernet хочет.
источник

AP

Alexander Polikushin in ru_ASUTP
Тогда NPort
источник

AP

Alexander Polikushin in ru_ASUTP
Там есть модели только 485, чуть дешевле совмещенных
источник

JB

Jury Belorusov in ru_ASUTP
Еще ICPDAS посмотрите. Проверено, работает
источник

AK

Alexander Krylasov in ru_ASUTP
в принципе все как-то работает, даже лантан тот же..
источник

JB

Jury Belorusov in ru_ASUTP
Ну MOXA предпочтительнее, согласен) Но сейчас с поставками всего беда просто. Поэтому добавил проверенный вариант.
источник

СМ

Сано Мо in ru_ASUTP
да эти штуки мне нравятся. Ставили несколько раз
источник

D

Dim in ru_ASUTP
вот без прерываний:
void setup() {
 pinMode(10, INPUT);
 pinMode(11, OUTPUT);

 pinMode(8, INPUT);
 pinMode(9, OUTPUT);

 pinMode(6, INPUT);
 pinMode(7, OUTPUT);

}

void loop() {
 // read the state of the pushbutton value:
//  port1 = digitalRead(2);

 // check if the pushbutton is pressed. If it is, the buttonState is HIGH:
 if (digitalRead(6) == LOW) {UART1;}  
 if (digitalRead(8) == LOW) {}
 if (digitalRead(10) == LOW) {}  
}

void UART1() {
 uint8_t counter_delay=0;
 while (counter_delay<255 ){
 counter_delay=0;
 uint8_t buf=255;
 uint8_t counter=0;
 delayMicroseconds(8);
 while (counter!=8 ){delayMicroseconds(4);
 if (digitalRead(6) == LOW) {bitWrite(buf, counter, 0);}
 counter++;  
 //Buf<<=1;
 }
 //можно переписать принятый байт в буфер
 delayMicroseconds(13);  
 while (digitalRead(6) == LOW and counter_delay<255){counter_delay++;}
 }
 
 }
источник

AP

Alexander Polikushin in ru_ASUTP
И теперь видео стенда на котором это работает
источник