PDA

Просмотр полной версии : плк-150 и Rs232



zobza
26.04.2010, 09:50
Добрый день. Занимаюсь разработкой с использование ПЛК-150, а именно передачей необходимой информации по RS232. Использовал библиотеки SysLibCom и UNM. Порт сканируется с помощью PortMon. Так хотелось бы узнать почему в порт присылается не только отправленное сообщение но и всякий "мусор"?

Филоненко Владислав
26.04.2010, 10:07
проект в студию. никакого мусора быть не должно.

zobza
26.04.2010, 11:35
PROGRAM PLC_PRG
VAR
str:STRING:='hello';
END_VAR

LockDevice(0);
SetByte(0,str,LEN(str));
ReleaseDevice(0);

Считывается:
11:28:28 Gateway.exe IRP_MJ_READ Serial0 SUCCESS Length 122: ..D...X.....................C............hello.... ..............

11:28:29 Gateway.exe IRP_MJ_READ Serial0 SUCCESS Length 122: ..D...".....................C............hello........... .......

zobza
26.04.2010, 11:45
PROGRAM PLC_PRG
VAR
dwPortHandle: DWORD;
comset: COMSETTINGS;
port: PORTS := COM1;
str:STRING:='AT$R$N';
END_VAR


dwPortHandle:=SysComOpen(port);
comset.byParity:=0;
comset.byStopBits:=0;
comset.dwBaudRate:=9600;
comset.dwBufferSize:=0;
comset.dwScan:=0;
comset.dwTimeout:=0;
comset.Port:=port;
SysComSetSettings(dwPortHandle,ADR(comset));
SysComWrite(dwPortHandle,ADR(str),LEN(str),0);


11:38:35 Gateway.exe IRP_MJ_READ Serial0 SUCCESS Length 120: ..D...I..............%.................AT......... .............

11:38:35 Gateway.exe IRP_MJ_READ Serial0 SUCCESS Length 120: ..D..................%.................AT......... .............

zobza
26.04.2010, 12:16
Правда есть предположение что это не считываеться не только то что отправляет ПЛК, но и какая то служебная информация. И еще после ресета гипертерминал выда
DATAFLASH initialized successful

Welcome to the OWEN program loader 1.3
Kernel found...
Loading kernel...
Reseting...
Checksum OK!
local_status =bLoad PLC core...
Main oscilator clock=15998976
Processor clock=179988480
Master clock=59996160
Waiting for check power...
Power status OK
at 20080004, s=16
Initialization of Timer0 completed
Module Id=1 found
Module Id=2 found
Module Id=3 found
Module Id=100 found
Module Id=101 found
Module Id=102 found
Module Id=103 found
Module Id=104 found
Module Id=106 found
Module Id=107 found
Module Id=200 found
Module Id=2000 found
Module Id=2050 found
Module Id=2051 found
Module Id=2052 found
Module Id=2053 found
Module Id=2054 found
Module Id=2055 found
Module Id=2056 found
Module Id=2057 found
Module Id=2058 found
Module Id=2059 found
Module Id=2060 found
Module Id=2061 found
Module Id=2062 found
Module Id=2063 found
Module Id=2064 found
Module Id=2065 found
Module Id=201 found
Module Id=202 found
Module Id=210 found
Module Id=2100 found
Module Id=211 found
Module Id=250 found
Module Id=302 found
Module Id=303 found
Module Id=450 found
Module Id=451 found
Module Id=452 found
Module Id=500 found
Module Id=502 found
Module Id=504 found
Module Id=550 found
Module Id=600 found
Module Id=601 found
Module Id=602 found
Module Id=650 found
Module Id=700 found
Module Id=701 found
Module Id=702 found
Module Id=703 found
Module Id=704 found
Module Id=221 found
Module Id=300 found
Module Id=561 found
Module Id=400 found
Module Id=402 found
Module Id=401 found
Initialization of Timer5 completed
Initialization of Timer4 completed
Begin search and initialize I2C devices
Check for adress 77 ...DEVICE FOUND!
MCP9800 #0 OK!
Check for adress 72 ...DEVICE FOUND!
MCP9800 #1 OK!
Check for adress 4 ...DEVICE FOUND!
PIC lower initialized!
Check for adress 3 ...DEVICE FOUND!
PIC upper initialized!
at 2008003c, s=4
at 20080044, s=4
Read Flash: .at 2008004c, s=4
at 20080054, s=4
at 2008005c, s=4
.at 20080064, s=4
.................at 2008006c, s=4
.................................................. ..............................
..
DATAFLASH READ OK

Flash read takes 3487 ms
Start mounting FFS
Flash check takes 2366 ms
It is 0 bad blocks
Mounting of FFS completed!
Mounting takes 129 ms
Total size of filesystem is 3145728 bytes
It is 6089 blocks
It is 55 used blocks
It is 0 bad blocks
Maximum wear level is 20 times

Reset status information.......................
PLC was reset by power!

Last run module Id =-1
Last post module Id =-1
Total control code =18
Max cache utilisation =1
local_status =b
run_level =2
Run levels stack: ff 16 ff ff ff 0 0 0 0 0 0 0 0 0 0 0
................................................
at 200800bc, s=28
ADC and DAC driver initialized!
PLC model MODEL PLC 150
Binary VERSION 2.10.5
Need Target version 2.10
Compiled: 14:54:33 Aug 6 2009
MAC 6A:77:00:20:85:BA
IP 10.0.6.10
GATE 10.0.0.1
MASK 255.255.255.0
PIC upper version is 07
Licence unlimited
Universal DAC
PIC lower version is 0d

Loading PLC core completed!

Start CoDeSys initialization secuence
CoDeSys.cfg not found RS no modem CoDeSys mode
Special cable detected...
Switch top RS to CoDeSys mode...

DATAFLASH initialized successful

Welcome to the OWEN program loader 1.3
Kernel found...
Loading kernel...
Reseting...
Checksum OK!
local_status =bLoad PLC core...
Main oscilator clock=15994880
Processor clock=179942400
Master clock=59980800
Waiting for check power...
Power status OK
at 20080004, s=16
Initialization of Timer0 completed
Module Id=1 found
Module Id=2 found
Module Id=3 found
Module Id=100 found
Module Id=101 found
Module Id=102 found
Module Id=103 found
Module Id=104 found
Module Id=106 found
Module Id=107 found
Module Id=200 found
Module Id=2000 found
Module Id=2050 found
Module Id=2051 found
Module Id=2052 found
Module Id=2053 found
Module Id=2054 found
Module Id=2055 found
Module Id=2056 found
Module Id=2057 found
Module Id=2058 found
Module Id=2059 found
Module Id=2060 found
Module Id=2061 found
Module Id=2062 found
Module Id=2063 found
Module Id=2064 found
Module Id=2065 found
Module Id=201 found
Module Id=202 found
Module Id=210 found
Module Id=2100 found
Module Id=211 found
Module Id=250 found
Module Id=302 found
Module Id=303 found
Module Id=450 found
Module Id=451 found
Module Id=452 found
Module Id=500 found
Module Id=502 found
Module Id=504 found
Module Id=550 found
Module Id=600 found
Module Id=601 found
Module Id=602 found
Module Id=650 found
Module Id=700 found
Module Id=701 found
Module Id=702 found
Module Id=703 found
Module Id=704 found
Module Id=221 found
Module Id=300 found
Module Id=561 found
Module Id=400 found
Module Id=402 found
Module Id=401 found
Initialization of Timer5 completed
Initialization of Timer4 completed
Begin search and initialize I2C devices
Check for adress 77 ...DEVICE FOUND!
MCP9800 #0 OK!
Check for adress 72 ...DEVICE FOUND!
MCP9800 #1 OK!
Check for adress 4 ...DEVICE FOUND!
PIC lower initialized!
Check for adress 3 ...DEVICE FOUND!
PIC upper initialized!
at 2008003c, s=4
at 20080044, s=4
Read Flash: .at 2008004c, s=4
at 20080054, s=4
at 2008005c, s=4
.at 20080064, s=4
.................at 2008006c, s=4
.................................................. ..............................
..
DATAFLASH READ OK

Flash read takes 3487 ms
Start mounting FFS
Flash check takes 2366 ms
It is 0 bad blocks
Mounting of FFS completed!
Mounting takes 129 ms
Total size of filesystem is 3145728 bytes
It is 6089 blocks
It is 55 used blocks
It is 0 bad blocks
Maximum wear level is 20 times

Reset status information.......................
PLC was reset by power!

Last run module Id =-1
Last post module Id =-1
Total control code =18
Max cache utilisation =1
local_status =b
run_level =1
Run levels stack: ff ff ff ff 0 0 0 0 0 0 0 0 0 0 0 0
................................................
at 200800bc, s=28
ADC and DAC driver initialized!
PLC model MODEL PLC 150
Binary VERSION 2.10.5
Need Target version 2.10
Compiled: 14:54:33 Aug 6 2009
MAC 6A:77:00:20:85:BA
IP 10.0.6.10
GATE 10.0.0.1
MASK 255.255.255.0
PIC upper version is 07
Licence unlimited
Universal DAC
PIC lower version is 0d

Loading PLC core completed!

Start CoDeSys initialization secuence
CoDeSys.cfg not found RS no modem CoDeSys mode
LZS initialization susesful
Try to open boot project...
**** ERROR: Can not open Checksum file ****

Филоненко Владислав
26.04.2010, 13:40
При старте есть лог на 232.
11:38:35 Gateway.exe IRP_MJ_READ Serial0 SUCCESS Length 120: ..D...I..............%.................AT......... .............
А что такое Gateway.exe? Это среда разработки, к-я связывается с ПЛК по тому-же порту в то-же время?
Тогда ясно откуда в канале связи есть "посторонние" символы.

zobza
27.04.2010, 08:31
При старте есть лог на 232.
11:38:35 Gateway.exe IRP_MJ_READ Serial0 SUCCESS Length 120: ..D...I..............%.................AT......... .............
А что такое Gateway.exe? Это среда разработки, к-я связывается с ПЛК по тому-же порту в то-же время?
Тогда ясно откуда в канале связи есть "посторонние" символы.

К сожалению ничего не ясно. При создании простого проекта без использования 232-ого типа ";" на COM-порте все чисто. И еще вопрос, почему сообщение начинает посылаться на порт до того как происходит нажатие Start. Тоесть я только запрограмировал ПЛК, не успел нажать Start, а он уже присылает сообщение.

Филоненко Владислав
27.04.2010, 08:34
Потому что Gateway.exe . Используйте для связи с ПЛК Ethernet.