基于GSM、GPS及CAN总线的列车行程测量系统
时间:11-04
来源:互联网
点击:
CAN总线通讯控制模块
CAN总线通讯控制模块主要完成各车载终端之间的通讯,由于CAN总线接口能在噪声环境下进行通讯,从而保证了数据传输的可靠性。PIC18F458内部集成了CAN总线通讯控制器,执行的是Bosch公司规范的CAN210A/B协议,它包含完整的CAN系统。CAN总线模块由协议驱动和信息缓冲与控制组成。CAN协议驱动CAN总线上接受和发送信息的所有功能,信息通过首先装载到某个相应的数据寄存器发送,通过读相应的寄存器可以检查状态与错误信息。在CAN总线上检测到的任何信息都要进行错误检查,然后与过滤器进行比较,判断是否应该被接受和存储到2个接受寄存器之一。图4为CAN总线驱动器PCA82C250T与单片机的连接图, 其中的PCA82C250T为PHILIPS公司的CAN总线驱动器,它将PIC18F458的CAN控制器输出引脚的TTL电平变换为CAN总线上的差分信号。J12插头的第2脚与第7脚间接有120Ω的匹配电阻。在CAN总线上,一般在两端的CAN接头需要接入120Ω的匹配电阻,中间则不用接。
车载终端控制器软件编程
车载终端控制器的软件主要完成3方面的任务:系统的初始化,循环处理GPS接收到的导航电文;单片机与TC35的通信以及GSM信息的发送;处理CAN总线数据的收发。这些任务在程序中是分两部分来完成的,即主程序和中断程序。主程序主要完成系统的初始化、CAN总线数据的发送、GSM信息的发送、列车行驶里程的计算等;中断程序主要完成GPS信息的接收和CAN总线数据的接收。键盘检测采用查询方式。软件采用C语言编程。主程序流程图如图5所示。
系统启动后首先要对相应的变量和模块进行初始化,读出存储在EEPROM中的列车行驶里程数据并将其显示出来,然后检测是否有键被按下。键盘主要完成3方面任务:显示器设置,启动CAN总线数据发送和GSM信息发送。GPS信息的接收采用中断方式。系统每秒接收一个GPS信息,从GPS信息中读出列车的行驶速度,将列车的行驶速度乘以列车的行驶时间(1s),得出列车在1s内的行驶里程并进行一次行程的累加。为保证数据的安全性,列车每行驶 1km,EEPROM中存储的列车行驶里程数据刷新1次。
在主控车载终端,CAN总线数据的发送采用键盘触发方式。信息从CAN控制器发送到CAN总线是由CAN控制器自动完成的,发送程序只需把被发送的信息送到CAN的发送缓冲区,然后启动发送命令即可。CAN总线数据的接收采用中断方式。当系统产生CAN中断时,信息从CAN总线到CAN接收缓冲区是由CAN控制器自动完成的,接收程序只要从接收缓冲区读出要接收的信息即可。
结语
在本系统中,行程测量的相对误差主要取决于列车的行驶速度。通过大量实验可以得出,当列车的行驶速度大于10km/h时,本系统行程测量的相对误差小于 2%。一般而言,列车的行驶速度常高于10km/h。因此,本系统行程测量的相对误差不会大于2%,完全满足测量相对误差应小于3%的设计要求。
本系统的设计完全满足列车行程测量的准确度和可靠性要求,既实现了列车行程的自动记录,同时也实现了对各列车的统一监控管理。它解决了现有列车行程记录方式存在的弊端,为列车行程的测量和管理提供了一种新方法。通过对列车行驶里程及时准确的记录和监控,确保各列车能够得到及时的检修,为列车的安全运行提供了保障。本系统利用了当前技术比较成熟的GSM蜂窝数字移动通讯系统和GPS全球定位系统,而且具有成本低廉、结构简单、抗干扰能力强及可靠性高等优点,因此具有广阔的应用前景。
CAN总线通讯控制模块主要完成各车载终端之间的通讯,由于CAN总线接口能在噪声环境下进行通讯,从而保证了数据传输的可靠性。PIC18F458内部集成了CAN总线通讯控制器,执行的是Bosch公司规范的CAN210A/B协议,它包含完整的CAN系统。CAN总线模块由协议驱动和信息缓冲与控制组成。CAN协议驱动CAN总线上接受和发送信息的所有功能,信息通过首先装载到某个相应的数据寄存器发送,通过读相应的寄存器可以检查状态与错误信息。在CAN总线上检测到的任何信息都要进行错误检查,然后与过滤器进行比较,判断是否应该被接受和存储到2个接受寄存器之一。图4为CAN总线驱动器PCA82C250T与单片机的连接图, 其中的PCA82C250T为PHILIPS公司的CAN总线驱动器,它将PIC18F458的CAN控制器输出引脚的TTL电平变换为CAN总线上的差分信号。J12插头的第2脚与第7脚间接有120Ω的匹配电阻。在CAN总线上,一般在两端的CAN接头需要接入120Ω的匹配电阻,中间则不用接。
车载终端控制器软件编程
车载终端控制器的软件主要完成3方面的任务:系统的初始化,循环处理GPS接收到的导航电文;单片机与TC35的通信以及GSM信息的发送;处理CAN总线数据的收发。这些任务在程序中是分两部分来完成的,即主程序和中断程序。主程序主要完成系统的初始化、CAN总线数据的发送、GSM信息的发送、列车行驶里程的计算等;中断程序主要完成GPS信息的接收和CAN总线数据的接收。键盘检测采用查询方式。软件采用C语言编程。主程序流程图如图5所示。
系统启动后首先要对相应的变量和模块进行初始化,读出存储在EEPROM中的列车行驶里程数据并将其显示出来,然后检测是否有键被按下。键盘主要完成3方面任务:显示器设置,启动CAN总线数据发送和GSM信息发送。GPS信息的接收采用中断方式。系统每秒接收一个GPS信息,从GPS信息中读出列车的行驶速度,将列车的行驶速度乘以列车的行驶时间(1s),得出列车在1s内的行驶里程并进行一次行程的累加。为保证数据的安全性,列车每行驶 1km,EEPROM中存储的列车行驶里程数据刷新1次。
在主控车载终端,CAN总线数据的发送采用键盘触发方式。信息从CAN控制器发送到CAN总线是由CAN控制器自动完成的,发送程序只需把被发送的信息送到CAN的发送缓冲区,然后启动发送命令即可。CAN总线数据的接收采用中断方式。当系统产生CAN中断时,信息从CAN总线到CAN接收缓冲区是由CAN控制器自动完成的,接收程序只要从接收缓冲区读出要接收的信息即可。
结语
在本系统中,行程测量的相对误差主要取决于列车的行驶速度。通过大量实验可以得出,当列车的行驶速度大于10km/h时,本系统行程测量的相对误差小于 2%。一般而言,列车的行驶速度常高于10km/h。因此,本系统行程测量的相对误差不会大于2%,完全满足测量相对误差应小于3%的设计要求。
本系统的设计完全满足列车行程测量的准确度和可靠性要求,既实现了列车行程的自动记录,同时也实现了对各列车的统一监控管理。它解决了现有列车行程记录方式存在的弊端,为列车行程的测量和管理提供了一种新方法。通过对列车行驶里程及时准确的记录和监控,确保各列车能够得到及时的检修,为列车的安全运行提供了保障。本系统利用了当前技术比较成熟的GSM蜂窝数字移动通讯系统和GPS全球定位系统,而且具有成本低廉、结构简单、抗干扰能力强及可靠性高等优点,因此具有广阔的应用前景。
GPS 总线 单片机 CAN总线 PIC 微芯 MIPS 电流 二极管 LED 继电器 ARM 电路 电压 CMOS 电阻 C语言 显示器 相关文章:
- 通讯硬件接口综述(11-11)
- 基于ARM的车载GPS智能导航系统(11-19)
- 基于GPS定位的嵌入式汽车监控器设计(01-14)
- GSM/GPS车载系统中LCD中文显示的编程方法(05-06)
- 基于DSP技术汽车定位防盗系统的体系结构研究(05-26)
- 赛灵思与微软汽车业务部推出的智能车载信息系统(06-18)