基于msp430f5529的循迹壁障无线控制智能小车设计报告(编辑修改稿)内容摘要:
按照如上引脚连接后,我们可以通过改变端口的高低电平变化 以控制小车的前进方向,通过改变端口的高低电平的占空比以控制电机的转速。 定时器基础知识介绍: 定时器 A功能模块主要包括: ( 1)计数器部分:输入的时钟源具有 4种选择,所选定的时钟源又可以 4 或 8 分频作为计数频率, Timer_A可以通过选择 4 种工作模式灵活的完成定时 /计数功能。 华中科技大学 2020 年 TI 杯电子设计竞赛总结报告 ( 2)捕获 /比较器:用于捕获事件发生的时间或产生时间间隔,捕获比较功能的引入主要是为了提高 I/O 端口处理事务的能力和速度。 不同的 MSP430 单片机, Timer_A 模块中所含有的捕获 /比较器的数量不一样,每个捕获 /比较器的结构完全相同,输入和输出都取决于各自所带控制寄存器的控制字,捕获 /比较器相互之间完全独立工作。 ( 3)输出单元 :具有可选的 8种输出模式,用于产生用户需要的输出信号,支持 PWM输出。 定时器工作模式 : ( 1)停止模式:停止模式用于定时器暂停,并不发生复位,所有寄存器现行的内容在停止模式结束后都可用。 当定时器暂停后重新计数时,计数器将从暂停时的值开始以暂停前的计数方向计数。 例如,停止模式前, Timer_A工作于增 /减计数模式并且处于下降计数方向,停止模式后, Timer_仍然工作于增 /减计数 模式,从暂停前的状态开始继续沿着下降方向开始计数。 如果不需这样,则可通过 TACTL 中的 CLR 控制位来清除定时器的方向记忆特性。 ( 2)增计数模式:捕获 /比较寄存器 CCR0 用作 Timer_A 增计数模式的周期寄存器,因为CCR0 为 16 位寄存器,所以该模式适用于定时周期小于 65536 的连续计数情况。 计数器 TAR可以增计数到 CCR0 的值,当计数值与 CCR0 的值相等 (或定时器值大于 CCR0 的值 )时,定时器复位并从 0 开始重新计数。 增计数模式的计数过程如图 42 所示。 通过改变 CCR0 值,可重置计数周期。 图 增计 数模式示意图 ( 3)连续计数模式:在需要 65536 个时钟周期的定时应用场合常用连续计数模式。 定时器从当前值计数到单增到 0FFFFH 后,又从 0 开始重新计数如图 43 所示。 图 连续计数模式 ( 4)增 /减计数模式 需要对称波形的情况经常可以使用增 /减计数模式,该模式下,定时器先增计数到 CCR0的值,然后反向减计数到 0。 计数周期仍由 CCR0 定义,它是 CCR0 计数器数值的 2 倍。 计数器的计数过程如图 44 所示。 图 增 /减计数模式 PWM信号的产生 华中科技大学 2020 年 TI 杯电子设计竞赛总结报告 使用定时器可以产生 定时中断 、定时脉冲和 PWM(脉宽调制)信号。 PWM信号是一种具有固定周期 T和不定占空比 t的数字信号, 如果 PWM信号的占空比随时间变化,那么会产生不同的模拟信号。 定时器的 PWM输出 一共有 8种模式 : 在输出模式 7下,每次 TA计数值超过 TACCRx时, TAx引脚会自动置低,当 TA计数至TACCR0时, TAx引脚会自动置高。 因此实际的输出波形就是 PWM调制方波。 只需要改变 TACCR0的值即可改变 PWM方波周期,改变 TACCRx即可改变从 TAx引脚输出信号的占空比: TACCRx越大,占空比越 大。 差速转向控制 该控制的基本原理是:转向时,智能小车的外侧小轮的转速增加,内侧下轮的转速降低,并且增加的量和减少的量大小相等,小车的中心速度保持原直线行驶时的速度不变。 循迹模块 模块综述: 作为小车自主循迹的主要部分,该部分必须完成小车精确地按照预定轨迹行驶的任务,华中科技大学 2020 年 TI 杯电子设计竞赛总结报告 确保不偏离轨迹较远。 该模块采用一体式红外对接管检测黑线。 本实验中采用三路循迹,当检测到黑线时,红外接收管接收到反射回来的红外光,其输出立即发生高低电平转换,该信号经放大器放大后送到单片机进行处理。 然后将处理后的结果发送到电机驱动模块进行校正。 为了保证小车沿着黑线行驶。 我们将三路检测器进行并行排列,当左(右)边检测到黑线时,小车左(右)转,当中间一个检测到黑线时,小车直行,使得控制精度得以提高。 传感器的安装位置如图所示: 逻辑设计: 开始 前方是否有障碍物 Y N 超声波测距壁障模块 模块概述 左边检测到黑线 中间检测到黑线 右边检测到黑线 左转 前行 右转 华中科技大学 2020 年 TI 杯电子设计竞赛总结报告 超声波作为智能车避障的一种重要手段,以其避障实现方便,计算简单,易于做到实时控制,测量精度也能达到实用的要求,在未来汽车智能化进程中必将得到广泛应用。 我国作为一个世界大国,在高科技领域也必须占据一席之地,未来汽车的智能化是汽车产业发展必然的,在这种情况下研究超声波在智能车避障上的应用具有深远意义,这将对我国未来智能汽车的研究在世界高科技领域占据领先地位具有重要作用。 本模块选用了超声波测距模块 HCSR04,它可以提供 2cm到 400cm的非接触式距离感测功能,测距精度可达到 3mm,模块包括超声波发射器、接收 器与控制电路。 本设计中,采用一个超声波模块,面对正前方,超声波在距离检测方面能够较准确定位。 该传感器主要发射高频超声波,在遇到障碍物时发生像光一样的反射和散射,从而通过发送和接受信号的时间得出距离,判断是否要躲避前方的障碍物。 主要芯片介绍: HCSR04 实物如下图。 其中 VCC 供 5V 电源, GND 为地线, TRIG 触发控制信号输入, ECHO 回响号输出, OUT口不使用。 图 5 超声波模块 器件的主要主要参数如下: HCSR04超声波的供电电压为 DC5V。 MSP430的供电 电压为。 其他电气参数如下: 最远射程 4m 最近射程 2cm 测量角度 15176。 输入触发信号 10us的 TTL脉冲 输出回响信号 输出 TTL电平信号,与射程成比例 HCSR04的工作原理 给最少 10us的高电平信号,采用 IO口 TRIG触发测距。 模块自动发送 8个 40KHz的方波,自动检测是否有信号返回;有信号返回,通过 IO口 ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。 测试距离 =(高电平时间 *声速) /2。 时序特性 华中科技大学 2020 年 TI 杯电子设计竞赛总结报告 从以 上时序图中可知,只需要提供一个 10us以上的脉冲触发信号,该模块内部将发出8个 40KHz周期电平并检测回波。 一旦检测到有回波信号则输出回响信号。 回响信号的脉冲宽度与所测的距离成正比。 由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。 公式: 距离 =(高电平时间 *声速) /2。 开发板的中断原理 首先查找数据手册,了解单片机的端口情况: 其中与定时器相关的端口有: TA0: ( Timer) TA1: ( CCR1)、 ( CCR2) TA2: ( CCR0)、 ( CCR1) TB0: ( Timer)、 ( CCR3) 与 I/O 中断相关的端口有: P1口: P2口: 、 、 、 、 MSP430F5529 总共有四个定时器, TA0、 TA TA TB0,其中 TA0 有 CCR0~CCR2,TA1 有 CCR0~CCR2, TA2 有 CCR0~CCR4, TB0 有 CCR0~CCR6。 我们可以使用 TASSEL_x语句选择时钟,若为 2,则代表的是选择内部时钟源 SMCLK,其频率为 1MHz;当数字为 1时,选择内部时钟源 ACLK,其频率为 32768Hz;当数字为 0 和 3 时选择的是外部时钟。 此外我们使用 MC_x语句选择计数器的计数方式,当为增计数时, TA0 定时器内部的计数器 TA0R 计到 CCR0 时归零; 0 为停止计数; 2 为连续计数,指的是 TA0R 计数到 0xFFFF 时归零; 3 为增减计数,指的是 TA0R 增计数到 CCR0 后进行减计数,减到零后进行增计数。 波形图分别为: 华中科技大学 2020 年 TI 杯电子设计竞赛总结报告 图 6 计数器计数模式 CCR 的 值取值范围为 0~65535。 我们使用 ID_x语句,设置定时器的分频; 引脚输出有 7 种模式控制。 使用语句 OUTMOD_x选择,代表含义如下: OUTMODEx 输出控制模式 说明 000(模式 0) 电平输出 TA0x管教输出电平由 OUT 控制位的值决定 001(模式 1) 延迟置位 当主计数器计至 TA0CCRx值时, TA0x管脚置 1 010(模式 2) 取反 /清零 当主计数器计至 TA0CCRx值时, TA0x管脚取反 当主计数器计至 TA0CCR0 值时, TA0x管脚置 0 011(模式 3) 置位 /清零 当主计数器计至 TA0CCRx值时, TA0x管脚置 1 当主计数器计至 TA0CCR0 值时, TA0x管脚置 0 100(模式 4) 取反 当主计数器计至 TA0CCRx值时, TA0x管脚取反 101(模式 5) 延迟清零 当主计数器计至 TA0CCRx值时, TA0x管脚置 0 110(模式 6) 取反 /置位 当主计数器计至 TA0CCRx值时, TA0x管脚取反 当主计数器计至 TA0CCR0 值时, TA0x管脚置 1 111(模式 7) 清零 /置位 当主计数器计至 TA0CCRx值时, TA0x管脚置 0 当主计数器计至 TA0CCR0 值时, TA0x管脚置 1 对于定时器的中断:其中包括溢出中断、 IO 中断等。 在比较模式下,当主计数器计至TA0CCRx时,计数满标志位置 1。 在捕获模式下,当捕获条件发生,相应的标志位置 1。 CCIFG标志会在中断执行后自动清零,其余模块共用了中断入口,他们的 CCIFG标志位会根据 TA0IV寄存器的值在知行相应的中断后自动清除。 中断语句格式为 pragma vector=Timer0_A1_VECTOR//Timer0 代表的是 TA0或者 TB0, A1 代表 //的是处理的中断由非 CCR0 的寄存器产生 //否则 A0指的是由 CCR0 产生 __interrupt void TA0_ISR(void)//void 后面的名称随意,声明是中断服务程序 对于 I/O 中断:可以使用 I/O 中断的 I/O 口有。 与 I/O 中断有关的标志位有: 华中科技大学 2020 年 TI 杯电子设计竞赛总结报告 PxIE 寄存器用于设置每一位 I/O 的中断允许, PxIES 寄存器用于选择每一位 I/O的中断触发沿。 在使用 I/O口中断之前,需要先将 I/O口设为输入状态,并允许改为 I/O的中断,再通过 PxIES寄存器选择触发方式为上升沿触发或者下降沿触发。 PxIFG 寄存器是 I/O 中断标志寄存器: 0=中断条件不成立 1=中断条件曾经成立过。 无论中断是否被允许,也不论是否正在执行中断服务程序,只要对应 I/O 满足了中断条件, PxIFG 中的相应位都会立即置 1 并保持,智能通过软件人工清除。 这种机制的目的在于最大可能的保证不会漏掉每一次中断。 在 MSP430 系列单片机中, P1口的 8 个中断和 P2 口的 8 个中断各公用了一个中断入口,因此该寄存器另一个重要作用在于中断服务程序中用于判断哪一位 I/O 产生了中断。 IO 中断的语句格式为: pragma vector=PORT1_VECTOR __interrupt void P1_ISR(void)//声明一个中断服务程序,名为 P1_ISR() 模块方案设计 硬件设计: 超声波的指向性很强,能量消耗缓慢,在介质中传播的距离较远,并且利用超声波检测距离设计比较方便,计算处理较简单。 总体方案的设计图为: 障碍物 超声波模块 MSP430 驱动电路 图 超声波模块总体方案 软件设计: 已知电机的 IN1IN4使用单片机上的 ,两 个使能端对应的端口分别为 对于使能端 ENA, ENB。 PWM使用定时器 TA1, TA1CCR0设定周期, TA1CCRTA1CCR2用来设置两个电机的转速。 该超声波程序在一直执行 PWM驱动的同时持续进行。 使用端口 ( TB0 Timer)输出信号到 Trig,使用 ( TA1 Timer)连接到 Echo。 将定时器 TB0设置。基于msp430f5529的循迹壁障无线控制智能小车设计报告(编辑修改稿)
相关推荐
,并存入指定的映像寄存器或数据寄存器。 ③ 诊断电源和PLC内部电路的工作故障和编程中的语法错误。 ④ PLC进入运行状态后,执行相应工作:从存储器逐条读取用户指令,经过命令解释后,按指令规定的任务产生相应的控制信号去启闭控制电路,通俗讲就是执行用户程序,产生相应的控制信号;进行数据处理,分时、分渠到执行数据存取、传送、组合、比较、变换等动作,完成用户程序中规定的逻辑运算或算术运算等任务
码是开放的,因此 Mysql 数据库成为一般中小型网站的开发的首选。 连接数据库 Mysql 数据库的连接方式有很多种,并与你使用的软件是否集成相关,现在讲普遍使用的两种方法,一种是通过 Windows 命令来登录,另一种是通过 Mysql 客户端登录。 1)通过 Windows 命令登陆 登录界面如图 1所示: 图 1 登录界面 2)通过 Mysql 客户端登陆 “开始“→”所有程序“→”
里无法实现的。 所谓高级三维人物动画特性包括以下几点: 可储存、可动画、可重新排序的多种变形工具。 一整套用以精确控制人物动画的反向运动学工具。 基于若干融合形态( Blend shapes)的面部表情动画控制。 7 一整套皮肤工具 对人物任一属性的细微表情控制 内置运输和捕捉支持 集成声音同步 模型上的缝合曲面,即使是在复杂的变形动画中也保持连续性。 玩过游戏最终幻想 8《
021V D D 0 1 2 32V D D D D 译码原理 卷积码译码方法主要有两类:代数译码和概率译码。 代数译码主要根据码本身的代数特性进行译码,而信道的统计特性并没有考虑在内。 目前,代数译码的主要代表是大数逻辑解码。 该译码方法对于约束长度较短的卷积码有较好的效果,并且设备较简单。 概率译码,又称最大似然译码,是基于信道的统计特性和卷积码的特点进行计算。
书写思维方式;用户使用方便:MATLAB语言灵活方便内涵丰富,十分容易上手,将编辑、编译、连接和执行融为一体,而且能迅速纠正用户的错误,使用户的编写、修改和调试的进度显著变快;扩充能力强:用户可以根据自己的需要自由生成M文件,将其做为函数或者模块加入函数库,需要时直接调用;高效方便的矩阵和数组运算:和其他许多语言一样可以对矩阵和数组进行计算,被成为“万能演算纸”;方便强大的绘图功能
函数 fft 执行高速基 — 2FFT算法,否则 fft 执行一种混合基的离散傅里叶变换算法,计算速度较慢,函数 FFT 的另外一种调用格式为 y=fft(x,N),式中, x, y 意义同前, N 为正整数。 函数执行 N 点的 FFT,若 x 为向量且长度小于 N,则函数将 x 补零至长度 N;若向量 x 的长度大于 N,则函数截短 x 使之长度为 N;若 x 为矩阵,按相同方法对 x