一、接口需求与三种实现方式
PROFINET是工业以太网总线的一种,在西门子自动化系统中配套较成熟。设备接入PROFINET网络需具备IO Device(从站)能力。常见实现方式有三种:自研协议栈,需完成协议移植、驱动开发、GSD文件编制与一致性测试;外置网关,作为独立设备安装在设备外部,需单独空间与接线;嵌入式板卡,以板级部件安装在设备壳体内部,由板卡承担协议处理,主控维持原有Modbus-RTU程序。
北京微硬创新科技有限公司的PROFINET嵌入式办卡型号PNMDOEM属于第三种,下文说明其技术实现。
二、板卡形态与硬件构成
PNMDOEM为板级模组,尺寸50mm×60mm,四孔固定安装(孔径3mm),供电5VDC(±5%),工作温度-25~55℃,湿度≤95%,防护等级IP20。板卡引出电源、TTL串口信号与两路以太网信号,TTL_TXD、TTL_RXD与设备主控UART连接;另有一路PROFINET在线状态信号SIGO。
网络侧2个RJ45接口,支持100BASE-TX与MDI/MDIX自检测,端口内集成以太网交换机,可组成链式网络并支持环网冗余;通讯采用PROFINET V2.2实时(RT)功能,符合GB/T 25105-2014规范。
三、Modbus侧配置能力
主站/从站模式通过板上BM1短路帽选择:BM1-1短接为从站,不短接为主站;BM1-4必须短接;BM1-2、BM1-3为闲置脚位。两种模式对应不同GSDML文件,主站为GSDML-V2.25-EECTRL-GJEEPNMM_V1.01-20200326.xml,从站为GSDML-V2.25-EECTRL-GJEEPNMS_V1.01-20200326.xml。
•波特率:300、600、1200、2400、4800、9600、19.2K、38.4K、57.6K、115.2K;字符格式支持8位无校验/偶校验/奇校验+1停止位,以及8位无校验+2停止位;
•功能码:主站支持01H、02H、03H、04H、05H、06H、0FH、10H;从站支持02H、04H、0FH、10H;
•报文与数据量:最多62条Modbus-RTU报文,输入≤500字节、输出≤500字节,合计≤1000字节;
•站点数:作为主站时可读写站地址为1的从站,带站点数为1个,一主多从需另行确认。
四、协议转换与数据映射
板卡内部完成Modbus寄存器与PROFINET过程IO地址之间的映射。从站模式下,板卡在PROFINET侧作为IO Device与PLC循环交换数据,串口侧作为Modbus从站;主控作为Modbus主站读写板卡寄存器,PLC下发的数据由主控读取,主控采集的数据写入寄存器后上传PLC。主站模式下,板卡主动轮询从站,读到的寄存器映射到PROFINET输入区,PLC下发的数据经输出区写入从站。
五、博途组态流程
1.导入GSD与添加设备:在TIA博途或STEP7导入对应模式GSDML文件,将设备加入网络视图,分配PROFINET设备名称与IP地址;PROFINET靠设备名称识别节点,仅设置IP无法建立通讯;
2.设置串口参数:配置波特率与校验方式,须与所接Modbus设备一致;Reply Time为等待应答时间,默认500ms;Idle Time为收到应答到下一条报文的间隔,默认50ms,从站响应慢时可增大;
3.配置报文:在硬件目录选择对应功能码模块插入逻辑槽位,设置Modbus站号与寄存器起始地址,数据映射到PLC的输入/输出地址区;
4.启动通讯:将通信控制字最低位D0置1,板卡开始循环执行Modbus报文。
六、诊断与调试
板卡提供1字节通信状态字,正常时在0x00与0x01之间交替。D7为奇偶校验错误,多为波特率或校验位不一致;D6为CRC校验错误,多为报文不完整或线路干扰;D5为等待应答超时,可增大总线空闲时间;D4~D1为Modbus异常应答,表示报文对从站无效,常见于寄存器地址超限或写入值非法。板卡支持从站状态监测,按位反馈各从站通讯状态,位为1表示正常;该功能占用PROFINET用户参数字节,配置后可用报文条数相应减少。
调试可用两种方式:用USB转RS485/RS232并在串口侧,通过串口调试助手截取原始Modbus-RTU报文,核对帧格式与时序;或用Modbus Slave模拟从站,在主控未完成时先行验证双向读写。
总结
PNMDOEM的核心是一块承担PROFINET协议处理的嵌入式板卡,可为原有Modbus-RTU终端提供PROFINET IO从站能力。协议处理与实时调度由板卡承担,主控程序保持不变;开发集中于GSDML导入、设备命名与IP分配、串口参数匹配、控制字D0置位;边界为62条报文、1000字节、主站1个站点、串口参数一致。适用于具备Modbus-RTU基础、需在设备内增加PROFINET IO接口的终端设备。如果您正在为这类设备做方案,不妨先从数据量和串口参数这两项算起,再结合现场工况确定配置。
审核编辑 黄宇