资源简介
飞思卡尔智能车竞赛摄像头组完整工程源代码。
代码片段和文件信息
#include “baseInc.h“
#include “math.h“
/*========================================================//
函数:PIDInit
功能:PID参数初始化
作者:
参数:
返回值:
备注:
/==========================================================*/
void PIDInit(void)
{
sPID.En_1 = 0;
sPID.En_2 = 0;
sPID.Un_1 = 0;
sPID.Kp = 4;
sPID.Ki = 0;//0.001;//0.014;
sPID.Kd = 1;
}
/*========================================================//
函数:PIDCalc
功能:PID算法
作者:
参数: PID * pp :PID结构体
SetPoint :设定目标值
DetectPoint:检测值、
返回值:Un uint :输出控制电机量
备注:
/==========================================================*/
float PIDCalc( PID *ppint SetPoint int DetectPoint )
{
int En; //本次偏差
float Un;
//输出
En = SetPoint - DetectPoint; // 偏差
Un = pp->Un_1 +pp->Kp * (En - pp->En_1)
+ pp->Ki * En // 积分项
+ pp->Kd * (En - 2*pp->En_1 + pp->En_2); // 微分
pp->En_2 = pp->En_1;
pp->En_1 = En;
pp->Un_1 = Un;
return Un;
}
/*========================================================
LineEdgeDetect
一条水平线上的区域边缘检测
乘以因子 【-1 0 +1】
==========================================================*/
void LineEdgeDetect(uchar *imagechar *resultchar No)
{
uchar ij;
for(i=1; i {
result[i-1] = m_aImage[i+1][No] - m_aImage[i-1][No];
}
}
/*=======================================================
GetLineCenter
提取道路中心线
=========================================================*/
char GetLineCenter(char *Lineuchar *markcenteruchar No)
{
int markl[3]markr[3];
uchar markweith;
uchar flaglflagr;
int center;
uchar i;
flagl = 0;
flagr = 0;
for(i=0; i {
if((m_aLineDot[i]<-6)&&(m_aLineDot[i+1]<-6))
{
flagl = 1;
markl[0] = i;
}else if((m_aLineDot[i]>6)&&(m_aLineDot[i+1]>6))
{
markr[0] = i;
flagr = 1;
break;
}
}
if(flagl&&flagr)
{
markweith = markr[0] - markl[0];
//m_cRoadLenth[m++] = markweith;
*markcenter = markweith/2+markl[0];
}else if(flagl&&(!flagr))
{
center = markl[0]+15-No;
*markcenter = center;
if(center>CCD_ROWS-1)(*markcenter) = CCD_ROWS-1;
}else if((!flagl)&&flagr)
{
center = markr[0]-15+No;
*markcenter = center;
if(center<0)(*markcenter) = 0;
}else
{
return NON;
}
return YES;
}
/*========================================================
RoadCenterDetect
路线标识的中心线检测
==========================================================*/
void RoadCenterDetect(void)
{
uchar ijkmarkweithmarkcenter;
uchar col;
m_aRoadParam.ValidStart = DISVALID;
m_aRoadParam.ValidNum = 0;
for(col=0; col {
LineEdgeDetect(m_aImagem_aLineDotcol);
if(GetLineCenter(&m_aLineDot&markcentercol)==YES)
{
if(m_aRoadParam.ValidStart == DISVALI
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 197224 2010-03-27 22:42 Car\bin\P&E_ICD.abs
文件 3018 2010-03-27 22:42 Car\bin\P&E_ICD.abs.phy
文件 2980 2010-03-27 22:42 Car\bin\P&E_ICD.abs.s19
文件 123807 2010-03-27 22:42 Car\bin\P&E_ICD.map
文件 197224 2010-04-01 23:20 Car\bin\Simulator.abs
文件 3022 2010-04-01 23:20 Car\bin\Simulator.abs.phy
文件 2984 2010-04-01 23:20 Car\bin\Simulator.abs.s19
文件 123809 2010-04-01 23:20 Car\bin\Simulator.map
文件 92 2010-03-27 22:42 Car\bin\P&E_ICD.xpr
文件 141710 2010-04-01 23:21 Car\Car07.mcp
文件 195780 2007-01-29 22:08 Car\Car070121\bin\P&E_ICD.abs
文件 5040 2007-01-29 22:08 Car\Car070121\bin\P&E_ICD.abs.phy
文件 5000 2007-01-29 22:08 Car\Car070121\bin\P&E_ICD.abs.s19
文件 129934 2007-01-29 22:08 Car\Car070121\bin\P&E_ICD.map
文件 84 2007-01-29 22:10 Car\Car070121\bin\P&E_ICD.xpr
文件 190660 2007-01-25 16:52 Car\Car070121\bin\Simulator.abs
文件 3906 2007-01-25 16:52 Car\Car070121\bin\Simulator.abs.phy
文件 3870 2007-01-25 16:52 Car\Car070121\bin\Simulator.abs.s19
文件 127842 2007-01-25 16:52 Car\Car070121\bin\Simulator.map
文件 176151 2007-01-25 16:55 Car\Car070121\Car07.mcp
文件 4196 2007-01-16 08:09 Car\Car070121\Car071_Data\CWSettingsWindows.stg
文件 69167 2007-01-16 08:09 Car\Car070121\Car071_Data\P&E_ICD\TargetDataWindows.tdt
文件 69171 2007-01-16 08:09 Car\Car070121\Car071_Data\Simulator\TargetDataWindows.tdt
文件 4380 2007-01-29 22:18 Car\Car070121\Car07_Data\CWSettingsWindows.stg
文件 23427 2007-01-29 22:08 Car\Car070121\Car07_Data\P&E_ICD\ob
文件 8392 2007-01-29 21:53 Car\Car070121\Car07_Data\P&E_ICD\ob
文件 7398 2007-01-29 21:56 Car\Car070121\Car07_Data\P&E_ICD\ob
文件 13942 2007-01-29 21:54 Car\Car070121\Car07_Data\P&E_ICD\ob
文件 7568 2007-01-29 21:53 Car\Car070121\Car07_Data\P&E_ICD\ob
文件 155264 2007-01-29 21:53 Car\Car070121\Car07_Data\P&E_ICD\ob
............此处省略127个文件信息
相关资源
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- 飞思卡尔68HC08Metrowerks_CodeWarrior开发软
- 飞思卡尔单片机.s19文件方法详解
- 利用改进人工势场法的智能车避障路
- 基于图像处理的智能车寻迹算法设计
- 智能车模糊控制
- k66说明,智能车K66
- 滤波-卡尔曼滤波-互补滤波
- 基于粤嵌GEC-6818开发板的智能车库系统
- 实现飞思卡尔两轮智能车的直立芯片
- 飞思卡尔智能车摄像头组
- 智能车摄像头图像处理
- 飞思卡尔编程入门菜鸟教程
- 摄像头四轮.rar
- 飞思卡尔所有的算法
- 恩智浦智能车摄像头组国赛3米1程序
- 飞思卡尔电磁程序
- 飞思卡尔kl25参考程序
- 智能车程序智能车资料
- 飞思卡尔小车仿真软件
- CCP源码、驱动和协议详解 包含了飞思
- 2014年智能车竞赛光电组程序
- 飞思卡尔 摄像头 可跑程序 完整的国
- 第十三届电磁组程序 -.rar
- 飞思卡尔软件教程资料
- 飞思卡尔智能车入门资料大全.7z
- 飞思卡尔HCS08中文手册
- 飞思卡尔KEA128核心系统原理图和封装
- 飞思卡尔MC9S08DZ60单片机学习板说明书
- 飞思卡尔P2020平台介绍
评论
共有 条评论