智能车运动状态实时监测系统的设计及实现
实现:将temp临时文件或用户指定文件的数据读出并装入,以下为主要程序代码:
本文引用地址:https://www.eepw.com.cn/article/95522.htmvoid CChuankokjDlg::find_data(car_data c_data[], BYTE c_source[], int c_length)
{
int i=0;
while(i<c_length-6)//防止下标越界
{ if((c_source[i]==0x00)&&(c_source[i+1]==0xff)&&(c_source[i+6]==0x00)&&(c_source[i+7]==0xff))//判断帧头并进行数据装入
{
c_data[length].speed_data=c_source[i+2];
c_data[length].battary_data=c_source[i+3];
c_data[length].direction_data=c_source[i+4];
c_data[length].sensor_data=c_source[i+5];
i=i+1;
}
else
i++;
}
}
·图形显示模块
功能:以图形界面来显示处理后的数据,以便更直观地观察智能车的运行状态。
实现:将上一模块中装入各数组的数据在用户的选择的模式下进行画图,可以只看一幅图,也可以将四幅图放在一起进行对比观看。实际的运行界面及效果如下图:
结语
该系统通过添加无线收发模块,将智能车的实时状态信息传到上位机上,通过VC++编程,用图象直观形象地将其表现出来,很好地达到了对智能车状态实时监测的目的,极大地方便了我们调节PID等智能车参数,对赛道记忆算法的研究提供了很大的帮助。
评论