P100C串口测试方法.docx
《P100C串口测试方法.docx》由会员分享,可在线阅读,更多相关《P100C串口测试方法.docx(15页珍藏版)》请在冰豆网上搜索。
P100C串口测试方法
P100C串口测试方法
目录
1.100C通信配置3
1.1.配置OLT(P3305)3
1.2.配置ONU的IP地址3
2.ONUtelnet配置3
3.测试环境4
4.测试方法4
4.1.配置串口1的参数4
4.2.建立会话模式5
4.3.收发数据6
4.4.100C说明6
4.5.查看统计9
5.修改MAC地址和序列号9
5.1.修改MAC地址9
5.2.修改序列号10
6.故障排查10
附:
11
版本更新方法11
1下载RAMloader并运行11
2更新Flashloader12
3下载配置文件12
4更新应用程序12
测试工具13
1Tcp/udp通用测试软件:
13
2串口助手:
13
1.100C通信配置
100C其实是一款模块化的ONU,因此对其管理配置都是在OLT上实现的,而一般测试时都使用3305来进行,但3305对ONU的串口通信的配置不支持。
因此在对100C通信配置时主要分为以下三步:
1、配置OLT(P3305),保证OLT可以进行正常的二层转发。
2、ONU注册之后,在OLT上为ONU配置管理地址。
3、telnet到ONU,进行串口通信的相关配置。
1.1.配置OLT(P3305)
配置过程分为两步:
第一步:
开启P3305的PON口和所有GE端口。
命令如下:
OLT_config#inte0/1
OLT_config_epon0/1#noshut
OLT_config_epon0/1#exit
OLT_config#intrangeg0/1–4
OLT_config_if_range#noshut
OLT_config_epon0/1#exit
OLT_config#
第二步:
设置所有的vlan为untagged状态。
命令如下:
OLT_config#vlanuntaggedall
1.2.配置ONU的IP地址
假定P100C注册到P3305的端口e0/1:
1上,并且配置P100C的IP为192.168.1.10,掩码为255.255.255.0,则在OLT端需要执行的命令如下:
OLT_config_epon0/1:
11#epononuipaddressstatic192.168.25.221255.255.255.0
由于P3305的GE端口为千兆端口,且不能进行速率协商,因此需要一台千兆交换机用作数据中转功能。
此时连接到中转交换机上的PC将可以Ping通P100C设备。
2.ONUtelnet配置
在配置好P100C的IP地址,以及完成OLT上的对应配置之后,就可以通过PCtelnet到P100C,用户名和密码为admin/admin。
进入之后,提示界面如下:
iROSONUCLI
Username:
admin
Password:
ONU(config)#
3.测试环境
具体搭建的环境如下:
说明:
OLT和ONU之间必须要添加分光器或者衰减器,否则可能会因为光功率过强导致ONU的光模块损坏。
4.测试方法
4.1.配置串口1的参数
测试时需要根据集中器设备和ONU接口的通信串口参数来配置ONU用于传输数据的串口的各种参数。
根据PC的串口参数,配置P100C的串口1的参数。
相关命令如下:
uartspeed/databits/stopbits/parity/interval/trigger
命令说明:
命令
命令说明
uarttriggercount
表示接收到指定数量count个字符之后,便封装成IP报文上传
uartintervaltimeout
表示如果在指定时间timeout内没有收到trigger对应数目的字符,则将收到的数据封装成IP报文上传。
在telnet进入到P100C之后,自动进入到config模式下,这时即可执行上面的命令。
该命令行支持问号提示和TAB键,即可查看对应的命令解释,以方便进行操作。
5.可以通过命令“uartshow”查看当前配置。
6.配置举例:
7.现配置串口1为speed:
38400,databits:
8,stopbits:
1,parity:
none,则配置命令如下:
ONU(config)#uartspeed38400
ONU(config)#uartdatabits8
ONU(config)#uartstopbits1
ONU(config)#uartparity0
ONU(config)#uartshow
Uart1infoandstats:
mode:
tcpclient
ipaddress:
10.0.0.15
protoport:
5000
TCPservertimout:
0
interval:
100
trigger:
100
speed:
38400
databits:
8
stopbits:
1
parity:
none
uarttx_bytes:
0
uartrx_bytes:
0
tx_int_times:
0
rx_int_times:
0
ustx_bytes:
0
usrx_bytes:
0
tx_bytes_failed:
0
rx_bytes_failed:
0
8.
4.2.建立会话模式
使用命令“uartmode”建立会话模式。
其会话模式与1208的串口会话模式一般无二,可以对比参照1208的串口测试文档,具体命令如下:
P100C会话模式
使用命令
参数和功能说明
TCPserver
uartmodeserverproto_port
proto_port:
取值范围5000—30000,表示本地TCP服务器侦听的端口号。
任何时候只能有一个TCPclient连接到该服务器。
UDP
uartmodeudpA.B.C.Dproto_port
A.B.C.D:
远端IP地址;
proto_port:
本地端口和远端端口号
远端配置的端口号必须与这里的proto_port数值相同。
TCPclient
uartmodeclientA.B.C.Dproto_port
A.B.C.D:
服务器IP地址;
proto_port:
服务器端口号
远端服务器必须首先开启。
在PC上打开“TCP&UDP测试工具”软件,配置相应的工作模式,即可与P100C建立连接。
4.3.收发数据
“TCP&UDP测试工具”软件发送数据:
在发送框中写入随机数字或者字母,然后点击自动发送即可。
在连接到P100C串口的CRT界面或串口助手中,输入测试字母或者数字,或者通过CRT“sendASCII”菜单发送对应的包含字母或者数字的文件,这时,“TCP&UDP测试工具”软件的接收框中就会显示出对应的内容。
4.4.100C说明
100C模块如下:
上图中红方框从左至右分别为1、2、3、4。
1中白三角所指的引脚为1引脚。
2为PON口指示灯,ONU注册至OLT灯亮。
3为link灯,收发数据时灯亮,正常时指示灯不停闪烁。
4为电源指示灯。
ONU其管脚定义如下:
其中比较重要的引脚为1、2、3、5、9、13、20、21、22这几个引脚。
在ONU模块插入到集中器时,
1、3、5必须为5V的电源输入;
2为接地;
9为串口数据的发送引脚;
13为串口数据的接受引脚;
20引脚为PON模块的控制引脚,需要输入高电平才能使ONU正常工作;
21为模块的电源控制。
集中器根据状态识别的引脚来检测ONU通信模块的状态进而控制电源。
“0”时关断模块电源,“1”时打开电源;
22为模块复位的控制引脚,“0”时模块处于复位状态;输入为高电平是才能使ONU正常工作;
只要以上的引脚输入正确,那么ONU就可以正常启动以及通过串口收发数据。
P100C内部包含两路串口,串口0用于控制台交互,串口用于传输通信数据。
不过在P100C的外部,只有一个串口接口。
因此需要通过拨码开关,来确定串口0或者串口1连接到外部的串口接口。
(在使用外接电源板的情况下,测试一般不需要该外接电源板,升级版本需要用到该电源板)
具体拨码方法如下(上图中红色拨码开关从左到右依次编号为1~6):
连接到外部的串口
拨码位置状态(123456)
串口0(用于控制台交互)
串口1(用于数据传输)
比如:
在上图的拨码开关状态下,将串口0连接到了外部。
4.5.查看统计
在P100C上通过命令“uartshow”查看相关统计。
5.修改MAC地址和序列号
5.1.修改MAC地址
通过telnet连接,进入ONU如下界面:
ONU(config)#
然后执行命令:
updatemacxxxx.xxxx.xxxx
即可。
说明:
修改的内容重启后有效。
举例:
修改ONU的MAC地址为00e0.0f00.1234,则使用如下命令:
ONU(config)#updatemac00e0.0f00.1234
5.2.修改序列号
通过telnet连接,进入ONU如下界面:
ONU(config)#
然后执行命令:
updatesnstring
即可。
说明:
修改的内容重启后有效。
举例:
修改ONU的序列号为P120001,则使用如下命令:
ONU(config)#updatesnP120001
6.故障排查
1、ONU模块插在集中器上,ONU无法上电启动。
解决办法:
首先确保ONU的1、3、5引脚有5V的电源输入,2引脚为接地。
同时21引脚有3.3V的高电平输入。
有可能是集中器通过状态识别引脚检测ONU的状态信息,当ONU的状态识别引脚为特定输出时,才会将电源打开。
由于各个电表厂家对于状态的定义不尽相同,所以可能会将21引脚拉低,关闭模块电源。
2、ONU模块插在集中器上,ONU可以正常上电,但是3个指示灯常亮,在OLT上发现ONU未上线。
解决办法:
ONU3个指示灯常亮的状态一般是在反复重启。
有可能是电表厂家设备的22引脚接地,而并不是一个3.3V的高电平。
因此需要和电表厂家协商,或者将该引脚飞线,接至一个有3.3V输出的集中器引脚,比如29引脚。
3、ONU可以正常运行,连至服务器,但是服务器在下发抄表命令时,收到集中器或电表相应的数据不正确或乱码。
解决办法:
首先要保证ONU上配置的串口参数,波特率、数据位、停止位、校验必须和集中器侧的串口参数完全匹配。
有可能是集中器设备与ONU模块之间存在频偏问题,有的电表厂家为了节省成本,设备没有加入晶振,导致频率偏差过大,影响与ONU模块之间的串口通信。
可以在ONU上适当的调整波特率,来适应集中器设备。
比如集中器设备的波特率为9600,同时存在一定的频偏(一般在2%以内),可以在ONU上设置波特率在9600左右的范围移动,并查看数据传输是否还不正确。
4、在采集系统上发现,ONU将集中器上传的完整的采集数据分为两段,分别封装成IP报发送至主站。
主站因为受到两条不完整的数据信息丢弃而导致采集失败。
解决办法:
通过调整串口缓冲等待周期来规避此问题。
附:
版本更新方法
一般来说技术支持拿到的100C模块都是已经升级过版本的,直接可以使用,同时升级版本也需要电源串口板来进行,所以版本更新的方法可以大致了解下。
1下载RAMloader并运行
RAMloader和FlashLoader以及应用程序的更新全部采用串口通信协议Xmodem,串口参数如下:
参数
取值
波特率
38400
数据位
8
停止位
1
校验方式
无
流控
无
按照跳线距离光模块由近及远的顺序,跳线依次编号为1~3
跳线开关的操作方法如下:
启动方式
跳线状态<1,2,3>
内部启动模式
Flash启动模式
将跳线开关设置为内部启动模式,然后开启电源。
RAMLoader更新采用“lm”命令:
iROSBoot>lm0x14000
iROSBoot>g0x14000
本命令是用来通过串口通信协议xmodem拷贝文件到系统的内存中,键入命令后,系统会等待用户在PC端启动xmodem传输。
下载完成之后,使用命令“g0x14000”运行RAMloader,按’d’或者‘D’进入命令行界面。
2更新Flashloader
在更新FlashLoader之前,系统必须运行在RAMLoader程序中。
更新FlashLoader采用“uloader”命令:
iROSBoot>ul
使用Xmodem协议发送文件的方法和RAMLoader更新相同。
更新完成Flashloader之后,关闭电源,更改跳线,设置系统从Flash启动。
按’d’或者‘D’进入命令行界面,为更新应用程序做好准备。
3下载配置文件
在运行Flashloader并且按’d’或者‘D’进入命令行界面后,使用如下命令下载配置文件:
第一步,使用命令“rf0x2f010000”擦除Flash配置空间:
iROSBoot>rf0x2f010000
第二步,使用命令“lf0x2f010000”下载配置文件到Flash配置空间:
iROSBoot>lf0x2f010000
LdF...
image_buffer_start0x22000000len0x00200000
C
使用Xmodem协议发送文件的方法和RAMLoader更新相同。
4更新应用程序
应用程序更新采用“ua”命令:
iROSBoot>ua
使用Xmodem协议发送文件的方法和RAMLoader更新相同。
测试工具
1Tcp/udp通用测试软件:
2串口助手: