产品描述
南昌西门子授权代理商CPU供应商
参数 | 代表的意义 | 参 数 | 代表的意义 |
b-0=2 | 选择参数 | b-3=1 | 外部端子起动 |
b-1=2 | 外部电位器调速 | b-7=60 | 加速时间:60秒 |
b-8=60 | 减速时间:60秒 | L-63=8 | 外部断线报警 |
b-15=0 | OC1输出控制排线马达 |
参数 | 代表的意义 | 参数 | 代表的意义 |
b-0=2 | 选择参数 | b-3=1 | 外部端子起动 |
b-1=2 | 外部电位器调速 | b-7=5 | 加速时间:5秒 |
b-8=5 | 减速时间:5秒 | L-63=8 | 外部断线报警 |
b-15=1 | OC1输出控制收线电机电磁刹车 | L-58=2.0 | 收线电机电磁刹车频率设定:2Hz |
CAN收发器与CAN总线接口
CAN收发器与CAN总线的接口如图2所示,其中SJA1000的TX0,RX0分别与CAN收发器的TXD,RXD相连,为提高CAN收发器82C250与CAN总线的接口部分的抗干扰能力,特在82C250 的CANH 和CANL 引脚串接一个共模扼流圈,以一定的共模干扰,而使得总线差分信号能够。并且CANH和CANL分别通过一个磁珠与总线相连,以起到一定的高频干扰。同时CANH 和CANL与地之间并联了两个30pf 的小电容,可以起到滤除总线上的高频干扰和一定的防电磁辐射的能力。另外在两根CAN总线接入端与地之间分别接了一个TVS,当CAN 总线有较高的电压时通过TVS的击穿而接地,可起到一定的过压保护作用。82C250 的Rs引脚上接有一个斜率电阻以降低CAN总线的向外辐射。
对于其他无内置CAN控制器的能够承受5V的TTL电平的处理器来说,只需改变与SJA1000的数据端口ALE/AS,RD/E,WR,CS,INT,RST相连接的引脚即可完成外扩CAN接口的硬件设计工作,否则在两者之间加一个逻辑电平转换的器件即可。
软件设计
对SJA1000的读写访问
由于LPC2131的48个引脚全是IO,所以需要通过软件模拟读写SJA1000的时序,来对SJA1000进行操作,进而完成CAN通讯功能。
依据SJA1000在Inbbb模式下的读写时序[4],可编写LPC2131通过CAN控制器SJA1000发送数据的写函数void WriteCan(uint8 Addr,uint8 Data)和接受CAN控制器所接受的数据的读函数uint8 ReadCan(uint8 Addr),其中Addr为SJA1000相应的寄存器的地址,Data为LPC2131所发送的数据,读函数ReadCan可返回所接受的数据。
CAN通讯的实现
要实现一个CAN通讯需要实现3个功能模块:对SJA1000的初始化模块;数据发送模块;数据接受模块。
·对SJA1000的初始化模块
在开始通讯之前,要在SJA1000的各个功能寄存器进行设置,包括模式寄存器,波特率,时钟分频器,中断使能寄存器,,滤波寄存器,输出控制寄存器。
uint8 IniSJA1000(uint8 BTR0,uint8 BTR1)
{
IO0CLR=CS; //片选SJA1000
WriteCan(0,0x09); //进入复位模式
WriteCan(31,0xe8); //设置时钟分频器
WriteCan(4,0xfd); //设置中断使能寄存器
WriteCan(16,AcceptCode1);//设置验收代码1
WriteCan(17,AcceptCode2);//设置验收代码2
WriteCan(18,AcceptCode3);//设置验收代码3
WriteCan(19,AcceptCode4);//设置验收代码4
WriteCan(20,MaskCode1); //设置验收屏蔽1
WriteCan(21,MaskCode2); //设置验收屏蔽2
WriteCan(22,MaskCode3); //设置验收屏蔽3
WriteCan(23,MaskCode4); //设置验收屏蔽4
WriteCan(6,BTR0); //设置总线时序寄存器1
WriteCan(7,BTR1); //设置总线时序寄存器2
WriteCan(8,0xfa); //设置输出控制积存器
WriteCan(0,0x08); //进入操作模式
OSCANMbox=OSMboxCreate(0);/建立CAN通
讯邮箱
if (OSCANMbox==NULL)
{
return FALSE;
}
return TRUE;
}
·数据发送模块
设要发送的数据的ID存储在数组ID[4]中,数据存储在数组SendData[8]中,其发送模块程序如下所示,其中参数DLC为发送的字节数,FF为帧类型,即0为数据帧,1为远程帧。
void Tx(uint8 DLC,uint8 FF)
{
uint8 i;
OS_ENTER_CRITICAL();
If (FF==0x01)
{
WriteCan(16,DLC+0x80); //数据帧
}
else
{
?WriteCan(16,DLC+0xd0); //远程帧
}
WriteCan(17,ID[0]);
WriteCan(18,ID[1]);
WriteCan(19,ID[2]);
WriteCan(20,ID[3]); //TX标识码
for (i=0;i WriteCan(21+i,sentdata[i]); //TX数据
WriteCan(1,0x01);//设置发送寄存器发送
OS_EXIT_CRITICAL();
}
·数据接受模块
根据电路图1,采用中断接受的方式来接受数据,LPC2131的P0.30设置为外部中断3,整个数据接受模块由数据接受函数void ReceiveData(uint8 *Rt)、中断处理函数Can_Exception(void)构成。当SJA1000接受到CAN总线数据,通过接收中断使得LPC2131产生外部中断3而使其进入中断处理函数,进而对接受到的数据进行处理。其中数据接受函数和中断处理函数如下:
void ReceiveData (void)
{
uint8 i, err,*Rt;
OS_ENTER_CRITICAL();
Rt=(uint8 *)OSMboxPend(OSCANMbox,0,&err);
//通过邮箱接受数据
for (i=0;i<13;i++)
ReceiveData[i]=*Rt++; //将接受到的数据存在
全局变量中供后续处理
OS_EXIT_CRITICAL();
}
void Can_Exception(void)
{
uint8 temp[13],i;
OS_ENTER_CRITICAL();
for (i=0;i<13;i++)
temp[i]=ReadCan(16+i);//读取CAN数据
OSMboxPost(OSCANMbox,(void *)temp); //将
CAN数据以邮箱发送到接受函数
EXTINT=0x08; //清楚ENT3
VICVectAddr=0; //中断返回
OS_EXIT_CRITICAL();
}
结语
以ARM芯片作为主控制器,CAN总线作为方式来进行通讯的嵌入式系统得到了越来越广泛的应用。同时CAN通讯的性也成为影响系统性能的关键部分之一。本文以LPC2131为例,给出了一类微处理器与CAN控制器SJA1000之间的较为通用的硬件连接方法,对CAN总线进行了性设计,并基于嵌入式实时操作系统μ-II进行了CAN通讯软件开发,该设计现已在工厂车间中的分布式监控系统中得到了应用,运行、稳定。
1 PLC系统中干扰的主要来源及途径 1.1来自空间的辐射干扰 空间的辐射电磁场(EMI)主要是由电力网络、电气设备的暂态过程、雷电、无线电广播、电视、雷达、高频感应加热设备等产生的,通常称为辐射干扰,其分布为复杂。若PLC系统置于所射频场内,就回收到辐射干扰,其影响主要通过两条路径:一是直接对PLC内部的辐射,由电路感应产生干扰;二是对PLC通信内网络的辐射,由通信线路的感应引入干扰。辐射干扰与现场设备布置及设备所产生的电磁场大小,特别是频率有关,一般通过设置屏蔽电缆和PLC局部屏蔽及高压泄放元件进行保护。 1.2来自系统外引线的干扰 主要通过电源和信号线引入,通常称为传导干扰。这种干扰在我国工业现场较严重。 1.2.1来自电源的干扰 PLC系统的正常供电电源均由电网供电。由于电网覆盖范围广,它将受到所有空间电磁干扰而在线路上感应电压和电路。尤其是电网内部的变化,入开关操作浪涌、大型电力设备起停、交直流传动装置引起的谐波、电网短路暂态冲击等,都通过输电线路传到电源原边。PLC电源通常采用隔离电源,但其机构及制造工艺因素使其隔离性并不理想。实际上,由于分布参数特别是分布电容的存在,隔离是不可能的。 1.2.2来自信号线引入的干扰 与PLC控制系统连接的各类信号传输线,除了传输有效的各类信息之外,总会有外部干扰信号侵入。此干扰主要有两种途径: 通过变送器供电电源或共用信号仪表的供电电源串入的电网干扰,这往往被忽视; 信号线受空间电磁辐射感应的干扰,即信号线上的外部感应干扰,这是很严重的。由信号引入干扰会引起I/O信号工作异常和测量精度大大降低,严重时将引起元器件损伤。对于隔离性能差的系统,还将导致信号间互相干扰,引起共地系统总线回流,造成逻辑数据变化、误动和死机。PLC控制系统因信号引入干扰造成I/O模件损坏数相当严重,由此引起系统故障的情况也很多。 1.2.3来自接地系统混乱时的干扰 接地是提高电子设备电磁兼容性(EMC)的有效手段之一。正确的接地,既能抑制电磁干扰的影响,又能抑制设备向外发出干扰;而错误的接地,反而会引入严重的干扰信号,使PLC系统将无法正常工作。 PLC控制系统的地线包括系统地、屏蔽地、交流地和保护地等。接地系统混乱对PLC系统的干扰主要是各个接地点电位分布不均,不同接地点间存在地电位差,引起地环路电流,影响系统正常工作。例如电缆屏蔽层一点接地,如果电缆屏蔽层两端A、B都接地,就存在地电位差,有电流流过屏蔽层,当发生异常状态如雷击时,地线电流将大。 此外,屏蔽层、接地线和大地有可能构成闭合环路,在变化磁场的作用下,屏蔽层内有会出现感应电流,通过屏蔽层与芯线之间的耦合,干扰信号回路。若系统地与其它接地处理混乱,所产生的地环流就可能在地线上产生不等电位分布,影响PLC内逻辑电路和模拟电路的正常工作。PLC工作的逻辑电压干扰容限较低,逻辑地电位的分布干扰容易影响PLC的逻辑运算和数据存贮,造成数据混乱、程序跑飞或死机。模拟地电位的分布将导致测量精度下降,引起对信号测控的严重失真和误动作。 1.3 来自PLC系统内部的干扰 主要由系统内部元器件及电路间的相互电磁辐射产生,如逻辑电路相互辐射及其对模拟电路的影响,模拟地与逻辑地的相互影响及元器件间的相互不匹配使用等。这都属于PLC制造厂对系统内部进行电磁兼容设计的内容,比较复杂,作为应用部门是无法改变,可不多考虑,但要选择具有较多应用实绩或经过考验的系统。 2主要抗干扰措施 2.1 采用性能优良的电源,抑制电网引入的干扰 在PLC控制系统中,电源占有重要的地位。电网干扰串入PLC控制系统主要通过PLC系统的供电电源(如CPU 电源、I/O电源等)、变送器供电电源和与PLC系统具有直接电气连接的仪表供电电源等耦合进入的。现在,对于PLC系统供电的电源,一般都采用隔离性能较好电源,而对于变送器供电的电源和PLC系统有直接电气连接的仪表的供电电源,并没受到足够的重视,虽然采取了一定的隔离措施,但普遍还不够,主要是使用的隔离变压器分布参数大,抑制干扰能力差,经电源耦合而串入共模干扰、差模干扰。所以,对于变送器和共用信号仪表供电应选择分布电容小、抑制带大(如采用多次隔离和屏蔽及漏感技术)的配电器,以减少PLC系统的干扰。 此外,为保证电网馈点不中断,可采用在线式不间断供电电源(UPS)供电,提高供电的性。并且UPS还具有较强的干扰隔离性能,是一种PLC控制系统的理想电源。 2.2 电缆选择的敖设 为了减少动力电缆辐射电磁干扰,尤其是变频装置馈电电缆。笔者在某工程中,采用了铜带铠装屏蔽电力电缆,从而降低了动力线生产的电磁干扰,该工程投产后了满意的效果。 不同类型的信号分别由不同电缆传输,信号电缆应按传输信号种类分层敖设,严禁用同一电缆的不同导线同时传送动力电源和信号,避免信号线与动力电缆靠行敖设,以减少电磁干扰。 2.3 硬件滤波及软件抗如果措施 由于电磁干扰的复杂性,要根本迎接干扰影响是不可能的,因此在PLC控制系统的软件设计和组态时,还应在软件方面进行抗干扰处理,进一步提高系统的性。常用的一些措施:数字滤波和工频整形采样,可有效周期性干扰;定时校正参考点电位,并采用动态零点,可有效防止电位漂移;采用信息冗余技术,设计相应的软件标志位;采用间接跳转,设置软件陷阱等提高软件结构性。 对干较低信噪比的模拟量信号.常因现场瞬时干扰而产生较大波动,若仅用瞬时采样植进行控制计算会产生较大误差,为此可采用数字滤波方法。现场模拟量信号经A/D转换后变成离散的数字信号,然后将形成的数据按时间序列存入PLC内存。再利用数字滤波程序对其进行处理,滤去噪声部分获得单纯信号, 可对输入信号用m次采样值的平均值来代替当前值,但井不是通常的每采样。次求一次平均值,而是每采样一次就与近的m-l次历史采样值相加,此方法反应速度快,具有很好的实时性,输入信号经过处理后用干信号显示或回路调节,有效地抑制了噪声干扰。 由干工业环境恶劣,干扰信号较多, I/ O信号传送距离较长,常常会使传送的信号有误。为提高系统运行的性,使PLC在信号出错情况下能及时发现错误,并能排除错误的影响继续工作,在程序编制中可采用软件容错技术。 2.4正确选择接地点,完善接地系统 接地的目的通常有两个,其一为了,其二是为了抑制干扰。完善的接地系统是PLC控制系统抗电磁干扰的重要措施之一。 系统接地方式有:浮地方式、直接接地方式和电容接地三种方式。对PLC控制系统而言,它属高速低电平控制装置,应采用直接接地方式。PLC控制系统接地线采用一点接地和串联一点接地方式。集中布置的PLC系统适于并联一点接地方式,各装置的柜体接地点以单的接地线引向接地。如果装置间距较大,应采用串联一点接地方式。用一根大截面铜母线(或绝缘电缆)连接各装置的柜体接地点,然后将接地母线直接连接接地。接地线采用截面大于22 mm2的铜导线,总母线使用截面大于60mm2的铜排。接地的接地电阻小于2Ω,接地埋在距建筑物10~15m远处(或与控制器间不大于50m),而且PLC系统接地点与强电设备接地点相距10m以上。 信号源接地时,屏蔽层应在信号侧接地;不接地时,应在PLC侧接地;信号线中间有接头时,屏蔽层应牢固连接并进行绝缘处理,一定要避免多点接地;多个测点信号的屏蔽双绞线与多芯对绞总屏电缆连接时,各屏蔽层应相互连接好,并经绝缘处理。选择适当的接地处单点接点。 3 结 语 以上的措施,经若干PLC控制系统现场实际运行表明,能够基本现场干扰信号的影响,保证系统的运行。PLC控制系统中的干扰是一个十分复杂的问题,因此在抗干扰设计中应综合考虑各方面的因素,合理有效地抑制抗干扰,对有些干扰情况还需做具体分析,采取对症的方法,才能够使PLC控制系统正常工作。 |
产品推荐