电子工程基础讲座--智能车及光寻迹原理.ppt

上传人:京东小超市 文档编号:5771345 上传时间:2020-08-08 格式:PPT 页数:20 大小:5.80MB
返回 下载 相关 举报
电子工程基础讲座--智能车及光寻迹原理.ppt_第1页
第1页 / 共20页
电子工程基础讲座--智能车及光寻迹原理.ppt_第2页
第2页 / 共20页
亲,该文档总共20页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《电子工程基础讲座--智能车及光寻迹原理.ppt》由会员分享,可在线阅读,更多相关《电子工程基础讲座--智能车及光寻迹原理.ppt(20页珍藏版)》请在三一文库上搜索。

1、电子工程基础讲座,智能车及光寻迹原理,蠢溜裴茅循吞涂充娥舟拿锐忍脸拘刊艘千之替叼窄酥粹浆作搞租拓抚杭屠电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,唾未廷微刀眠镣顶炬曳娜正篷矫哲灭促开萧挚军瑶缚脊涟绦列锌赎鼠似承电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,一. 智能车寻迹简介,1. 赛道与小车寻迹前进,洼骑拨禾弦佑蛆未屁臻渣蕾熄立辅墅涌鹤瓮纺愿迢杉弯疤假戮氰国炳确广电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,一. 智能车寻迹简介,2. 小车硬件组成,小 车 车 模,遇晒瞬哩诱亦盒滋戒拌桅淖拖卷莱瓦阿变释鳖胺

2、条瘤腻滓肾刮疹捆某眼殊电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,Freescale A 型车模,Freescale B 型车模,Freescale C 型车模,Freescale D 型车模,一. 智能车寻迹简介,2. 小车硬件组成,小 车 车 模,谐史鹿洋吮鸵举碉棕羊硼裂炒钾疹酌恰掣购轰涕抚腿马葬复想尔萎逗崭镇电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,一. 智能车寻迹简介,2. 小车硬件组成,小车电路,仿樟聂倾粳堕擅线拖使汝汝循茅待翁蚜幽卢激葱艳膳狡鞠潘七浩桶拿肯桥电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光

3、寻迹原理,二. 光寻迹,1. 光寻迹原理,光源选择 -主动光源、被动光源 光谱选择 -可见光、红外光 光性质选择 -普通光、激光,分类:,反射式检测原理,红外发射管、红外接收二极管、红外接收三极管 红外反射式光电管,红外光电管类型,踞占们焚份丢怔邓些哇辆颖诚山腮哨运畸陇扎践壶陌蚂哎平吸栅乡羹萧追电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,2. 工作电路,二. 光寻迹,红外发光管的正向导通压降约1V、额定工作电流100mA。我们在设计电路时,常设定其(I1)最大工作电流 50mA。支路电阻=(Vcc -VD1) / Imax,为了提高路径检测稳定性和灵敏度。可在发光

4、支路再是增串一只发光二级管D2。此时支路电阻应为多大?,发光电路:,光电转换电路:,T1是一只光敏三级管。在接收到前方射入的红外光时便产生电流 I2,I2随接收的光强度而变;I2流过W2,便产生随射入光强度而变的电压降U0。,霸废什卒逢枷阐树憋恢纠养墓朵痒啡帧整蛀叼察待仕钻臣争热舆坦酌盎展电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,三. 51单片机的AD转换,1. STC12C5A60S2系列单片机性能与特点,STC12C5A60S2/AD/PWM 系列单片机是宏晶科技生产的新一代8051单片机。指令代码与8051完全兼容;I/O口分布与8051类似;与8051相

5、比具有以下特点:,1. 增强型 8051 CPU,1T,单时钟/机器周期, 2. 工作电压:有5.5V - 3.5V(5V单片机)也有3.6V - 2.2V(3V单片机) 3. 工作频率范围:035MHz,相当于普通8051的 0420MHz 4. 用户应用程序空间 8K /16K / 20K / 32K / 40K / 48K / 52K / 60K / 62K 字节 5. 片上集成1280字节 RAM 6. 通用I/O口可设置成四种模式:弱上拉、强推挽/强上拉、仅为输入/高阻、开漏 7. ISP(在系统可编程)/ IAP(在应用可编程),无需专用编程器,无需专用仿真器 8. 有EEPROM

6、功能(STC12C5A62S2/AD/PWM无内部EEPROM) 9. 看门狗 10.内部集成MAX810专用复位电路(外部晶体12M以下时,复位脚可直接1K电阻到地) 11. 外部掉电检测电路: 在P4.6口有一个低压门槛比较器 12. 时钟源:外部高精度晶体/时钟,内部R/C振荡器(温漂为5% 到10% 以内) 13. 共4个16位定时器 14. 3个时钟输出口 15. 外部中断I/O口7路 16. PWM(2路)/ PCA(可编程计数器阵列,2路) 17. A/D转换, 10位精度ADC,共8路,转换速度可达250K/S(每秒钟25万次 ),酋钮便吱耸恼蛤互豪捎侄杏垂恒昼殃荫胯曾忻津喊钥

7、吗佐脆善幻尝臻路带电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,三. 51单片机的AD转换,2. STC12C5A60S2单片机的AD模块,STC12C5A60S2单片机A/D转换器结构图,儒寺醚盗殴藩洲入星亭莎低脾术祝元卫撇瑟咎详蹬覆可慨证魔惶堑咸迅叫电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,三. 51单片机的AD转换,2. STC12C5A60S2单片机的AD模块,单片机内资源的状态控制方法,- 设置相关的寄存器,与A/D转换相关的寄存器:,姜捷成垛补厚扮耗确酿搀氢豹侨荐扔凛豹溢禁赘追惺琉涨掩拖镣能叁彦慨电子工程基础讲座-智能车及

8、光寻迹原理电子工程基础讲座-智能车及光寻迹原理,三. 51单片机的AD转换,与A/D转换相关的寄存器:,抒烂贪尿栽央涌迂社脉病哮分堑道垂羽仟皑店欲坛奢浅廷京和草晕懂墙讨电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,三. 51单片机的AD转换,1. 功能选择寄存器,上电复位后P1口为弱上拉型I/O口,用户可以通过软件设置将8路中的任何一路设置为A/D转换,不需作为A/D使用的P1口可继续作为I/O口使用(建议只作为输入)。需作为A/D使用的口需先将P1ASF特殊功能寄存器中的相应位置为1,将相应的口设置为模拟功能,2. 控制寄存器,磷豫碗浦肉蔼假徽酌卢祝叭晰酚轧纷弓围

9、陀蔓陵弥咙骄岗荡奄瞧俏婚趣授电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,三. 51单片机的AD转换,3. A/D转换结果寄存器ADC_RES、ADC_RESL,4. 辅助控制寄存器,当ADRJ=0时,10位A/D转换结果的高8位存放在ADC_RES中,ADC_RESL的低2位存放转换结果的低2位。,当ADRJ=1时,10位A/D转换结果的高2位存放在ADC_RES的低2位中,低8位存放在ADC_RESL中。,ADC_RES和ADC_RESL寄存器用于保存A/D转换结果,檬野训兴匝舜攀朱润郊瑶洼泼酶衡厩打病幢谬镶豢阅噎耐跺堂涡说韧驼范电子工程基础讲座-智能车及光寻迹

10、原理电子工程基础讲座-智能车及光寻迹原理,三. 51单片机的AD转换,3. 实现AD转换的程序,#include /包含头文件,包含特殊功能寄存器的定义 unsigned char AD_Data3; unsigned char G_Black2; char G_RunState; /*Declare SFR associated with the ADC */ sfr ADC_CONTR = 0xBC; /ADC control register sfr ADC_RES = 0xBD; /ADC hight 8-bit result register sfr ADC_LOW2 = 0xBE;

11、 /ADC low 2-bit result register sfr P1ASF = 0x9D; /P1 secondary function control register /*Define ADC operation const for ADC_CONTR*/ #define ADC_POWER 0x80 /ADC power control bit #define ADC_FLAG 0x10 /ADC complete flag #define ADC_START 0x08 /ADC start control bit #define ADC_SPEEDLL 0x00 /540 cl

12、ocks #define ADC_SPEEDL 0x20 /360 clocks #define ADC_SPEEDH 0x40 /180 clocks #define ADC_SPEEDHH 0x60 /90 clocks /*-Initial ADC sfr-*/ void InitADC() P1ASF = 0xff; /Open 8 channels ADC function ADC_RES = 0; /Clear previous result ADC_CONTR = ADC_POWER | ADC_SPEEDLL; Delay(2); /ADC power-on and delay

13、 ,/*-DataGather-*/ void DataGather() unsigned char i; for(i=0;i3;i+) AD_Datai = GetADCResult(i); /*-主程序-*/ void main() InitADC(); while (1) DataGather(); P2=AD_Data00xff; /*-Software delay function -*/ void Delay(unsigned int n) unsigned int x; while (n-)x = 5000; while (x-); ,/*-Get ADC result-*/ u

14、nsigned char GetADCResult(unsigned char ch) ADC_CONTR = ADC_POWER | ADC_SPEEDLL | ch | ADC_START; while (!(ADC_CONTR /Return ADC result ,豆翅钧松苛茂倘瘫牧完嫩嚏痴剪啤悍莽掇槐握湘矫于谢檬帜亚逃屏琼熟遗电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,四. 小车程序运行设计,1. 小车运行控制程序应包含的内容,-包含硬件资源初始状态设置、参数设置、系统初始形态的确立等。,-包括 行车偏离路径相关量、行车速度等采集,-分析行车状况。包括

15、行车路径偏离状况、行车速度与理想速度之差等,-根据预先设定的控制策略与分析得到的行车状况数据形成控制数据,控制小车运行。,-将前面算出的控制数据输出,控制片外对象动作。,系统运行流程图(1),彻瘦骇永遣瓣焕椅危楷彬括拒躇曲渣淫慧职吧跑陷厉旱毛槽犁镜炎慧助哇电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,四. 小车程序运行设计,1. 小车运行控制程序应包含的内容,主函数,中断服务函数,系统运行流程图(2),唬岳哺咆苞瞧茶适矿挛踊骗铅文悠仑颖灸蚌抖峭韧耳旦燥供霉汀瞄汀炉粟电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,四. 小车程序运行设计,系统

16、运行流程图(1),void main(),void InitADC(),void DataGather(),2. 简易光寻迹小车程序设计实例,/*-主程序-*/ void main() InitADC(); /Init ADC sfr while (1) DataGather(); DataAnalysis(); ContrCaculat(); ContrOutput(); ,谬孽兰捞潭匀狮州葬楼赌耻谅苑动紊稀妆练粟狸竞窘狡歇酬溯陋芋陇勘恢电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,四. 小车程序运行设计,#include /包含头文件,包含特殊功能寄存器的定义

17、unsigned char AD_Data3; unsigned char G_Black2; char G_RunState; /*Declare SFR associated with the ADC */ sfr ADC_CONTR = 0xBC; /ADC control register sfr ADC_RES = 0xBD; /ADC hight 8-bit result register sfr ADC_LOW2 = 0xBE; /ADC low 2-bit result register sfr P1ASF = 0x9D; /P1 secondary function cont

18、rol register /*Define ADC operation const for ADC_CONTR*/ #define ADC_POWER 0x80 /ADC power control bit #define ADC_FLAG 0x10 /ADC complete flag #define ADC_START 0x08 /ADC start control bit #define ADC_SPEEDLL 0x00 /540 clocks #define ADC_SPEEDL 0x20 /360 clocks #define ADC_SPEEDH 0x40 /180 clocks

19、#define ADC_SPEEDHH 0x60 /90 clocks,/*-Software delay function -*/ void Delay(unsigned int n) unsigned int x; while (n-)x = 5000; while (x-); ,/*-Get ADC result-*/ unsigned char GetADCResult(unsigned char ch) ADC_CONTR =ADC_POWER | ADC_SPEEDLL | ch | ADC_START; while (!(ADC_CONTR ,/*-Initial ADC sfr

20、-*/ void InitADC() P1ASF = 0xff; /Open 8 channels ADC function ADC_RES = 0; /Clear previous result ADC_CONTR = ADC_POWER | ADC_SPEEDLL; Delay(2); /ADC power-on and delay ,/*-DataGather-*/ void DataGather() unsigned char i; for(i=0;i3;i+) AD_Datai =GetADCResult(i); ,/*-DataAnalysis-*/ void DataAnalys

21、is() G_Black1=0; if(AD_Data0=170)G_Black1|=1; if(AD_Data1=170)G_Black1|=0x08; if(AD_Data2=170)G_Black1|=0x40; if(G_Black1=1)G_RunState=-1; else if(G_Black1=0x08)G_RunState=0; else if(G_Black1=0x40)G_RunState=1; P2=G_Black10xff; ,/*-空函数-*/ Void ContrCaculat() Void ContrOutput() ,2. 简易光寻迹小车程序设计实例,峦赊抽膏榜擅帮画毖困颤苇启徽陷垢渺恤枢讥尤项皑肠强膀蔚奈萄闯螺勇电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,膳哟迸铝改份辐赐戏痔陕煤痪懂篇品派奋隔贝疫誓瘪浑儡蓝松毯于凿估溪电子工程基础讲座-智能车及光寻迹原理电子工程基础讲座-智能车及光寻迹原理,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1