历史上的今天
返回首页

历史上的今天

今天是:2025年04月10日(星期四)

正在发生

2018年04月10日 | 基于STM32F103RCT6的电脑鼠控制系统的设计

2018-04-10 来源:eefocus

    1 电脑鼠工作原理

    电脑鼠周围安装六组红外传感器,分别感知左方、左前方、前方、右前方、右方,发射端发射一定频率的红外线,接收端通过六个方向的反射波来判断是否有障碍物,实时地储存单元格的资料,通过六组红外传感器反馈的迷宫信息,控制电脑鼠完成避障、转弯、加速等动作,运用智能算法对迷宫的部分单元格或全部单元格进行遍历,并将迷宫的信息以有效的数据结构存储,微控制器根据这些记录信息运用迷宫高效算法找到一条最优化路径,从而实现从起点到终点的最大化冲刺。


    2 硬件电路设计

    为完成迷宫探测和冲刺任务,电脑鼠需具备以下各功能模块:ARM微处理器作为控制核心协调各功能模块正常工作;电机及驱动模块实时控制电机启动、制动;红外检测模块负责红外线探测感知;电源为整个系统供电稳定电压,陀螺仪及指南针模块确定电脑鼠方位,根据走过的距离,从而解析出所在坐标。硬件组成如图1所示。

    

    2.1 电源模块

    电源调节器件通常使用线性稳压器件(如LM7805),具有输出电压可调、稳压精度高的优点,但是其线性调整工作方式在工作有较大的“热损耗”,导致电源利用率不高、满足不了便携低功耗需求。开关电源调节器,不同于线性稳压器件,以完全导通或关断的方式工作,通过控制开关管的导通与截止时间,有效的减少工作中的“热损耗”,提高了电源利用率。本设计中电源模块为系统提供三种不同的电压,12V电源用于驱动电机,使用开关式电源LM2596将12V直流电压降到5V给红外模块、人机交互模块供电,再通过AMS1117将5V降到3.3V,供ARM处理器及其他模块使用。

    2.2 微处理器模块

    微处理器是整个控制系统的核心,它完成从红外检测模块获取路径信息,采集瞬时速度,进行数据处理,控制算法运算,输出实时控制量等功能。为了保证系统的实用性和易扩展性,本控制系统采用意法半导体推出的“增强型”系列STFM32F103RCT6,STM32F103xx增强型系列使用高性能的ARM Correx-M3 32位的RISC内核,工作频率为72MHz,内置高速存储器(高达128K字节的闪存和20K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。所有型号的器件都包含2个12位的ADC、3个通用16位定时器和一个PWM定时器,还包含标准和先进的通信接口:多达2个I2C和SPI、3个USART、一个USB和一个CAN,在存储容量和运算速度方面满足要求。

    2.3 电机及驱动模块

    为提高系统功率、降低功耗,驱动电路采用基于脉宽调制方式的集成电路芯片L298N。比较常见的是15脚Muliwart封装的L298N,内部包含四通道逻辑驱动电路,即内含两个H桥的高电压大电流双全桥式驱动器,可以驱动和控制两个直流电机,芯片采用供给电机电源和逻辑电平电源的双电源供电,可接受标准TTL逻辑电平信号,驱动46V,2A以下的电机,并可驱动电感性负载。其中ENA、ENB是控制使能端,IN1、IN 2、IN3、IN4是控制电平输入端,电路如图2所示。本设计中采用空心杯直流电机,它具有突出的节能特性、灵敏方便的控制特性和稳定的运行特性,最大效率一般在70%以上,部分产品可达到90%以上;起动、制动迅速,响应极快;其重量、体积相对减少1/3-1/2,通过PWM调节脉冲占空比进行调速。

    343

    2.4 红外检测模块

    红外检测模块主要负责迷宫环境监测和处理。红外线经调制后由发射管发出,接收管接收迷宫墙壁反射光,根据接收反射信号强弱来判断与隔墙的距离。本系统相对传统红外检测方法做如下特点:

    (1)红外传感器由原来的5组增加到6组。除了正前、正左、正右以及正前方两个45度斜角外,正前方增加1组红外传感器,通过正前方两组传感器信息的融合实现路口45度斜走,相对于以往的90度直角调整,节约了时间,提高了效率。

    (2)采用基于双T选频网络的放大器设计,红外传感器根据反射信号的强弱实现电脑鼠与障碍物之间的测距。以往使用的是一体化红外接收传感器(如IRM8601S),其接收头内部集成自动增益控制电路、带通滤波电路、解码电路及输出驱动电路,但由于检测信号输出的是数字信号,只能判断有或无障碍物,不能根据检测信号输出的强度计算距离。本设计中采用基于双T选频网络和TLC084组成的选频放大设计,实现频率不同增益不同,对有用信号进行放大处理,滤除或抑制无用信号。

    (3)发射三种频率调制波,减少信号之间的干扰。6组传感器分为三组,正左和正右两组传感器负责检测电脑鼠是否走在中线上,以便及时做出姿势校正;左前方和右前方两组传感器主要检查前方是否有路口;前方两组传感器配合电机,协同工作实现45度转弯。红外光发射频率越高,传播距离相对越远,在本设计中由于迷宫墙壁之间距离16.8cm(单元格18cm.墙壁厚度1.2cm),而电脑鼠的宽度一般为10cm左右,车体距两边墙体的距离只有3cm左右,所以正左方和正右方发射频率选择为33kHz,左前方和右前方发射35kHz,正前方距离最远,发射频率为38kHz。具体如图3所示。

   4545


    本设计进行了硬件电路改进,由STM32定时器输出三路PWM信号,每两组红外发射管共用一路PWM信号,遇到障碍物后返回,红外接收管进行信号采集,通过选频放大器对有用信号进行放大处理,送入STM32的12位逐次逼近型AD转换器。由于整流滤波有延时,所以此处采用交流采样,ADC在最高速采样的时候需要1.5十12.5个ADC周期,在14M的ADC时钟下达到1MSPs的速度。红外测距电路如图4所示,当接收管接收到红外线,D2导通,并且反射越强,D2阻值越小,没有收到红外线时,D2阻值无穷大,相当于截止;R3和R4两个10K电阻提供2.5V的直流偏置。



   35

    3 软件系统设计

    软件模块是系统的重要组成部分,电脑鼠通过红外检测获取周围信息,完成前进、转弯、冲刺、停止等基本动作,此外还要通过以获取信息实现最优路径的搜寻并完成最后的冲刺。本设计才用模块化设计,通过主程序调用各个功能子程序,主程序流程图和中断流程图如图5(a)(b)所示。

   565

    4 实验验证及分析

    (1)红外传感器测距系统中使用基于选频网络的放大设计,由于电阻电容选用国标,无法使中心频率恰好落在38kHz,双T选频网络中心频率f0=1/2πRC,选择R/C=10k/430pF,f0=37kHz,用multisim仿真出的幅频特性如图6所示,搭建硬件实验电路,中心频率并未落在37kHz而是30kHz,减小RC值多次试验,当R/C=9.1k/430pF,中心频率落在38kHz。

    343

    (2)迷宫墙壁由空心的白色塑料做成,有很大一部分红外光发生透射,加之日光影响,因此如法给发射管套用黑色外管,减少外界干扰;由ARM微处理器产生PWM信号送人红外发射管,接收管接收经过调制的红外信号;用三极管实现电平转换,调节电位器增加发射功率,使信号调整放大到A/D转换的最佳量程范围内,获得期望的处理精度。通过实验多次测量,得到一组红外测量距离与输出电压的数据,以障碍物距离S为横坐标,选频放大后的电压值U为纵坐标,用matlab绘制曲线,电压值与距离关系式为U=0.1195+4.5962*S-1,如图7所示。


   353

    (4)利用STM32定时器功能,通过软件编程调制出需要的PWM信号,以此控制电机、发射红外,图8是Timer4的CH1通道输出频率为38kHz,占空比为30%的PWM信号。

    5 结束语

    本文设计了基于STM32F103RCT6的电脑鼠控制系统,在matlab、muhisim仿真基础上,确定了选频网络的RC参数,并通过实验得到距离与电压值的关系图,体现了对称RC双T网络良好的选频特性;电机及驱动模块选用效率高、响应快的空心杯直流电机。经试验验证,该设计方案可以满足系统要求。


推荐阅读

史海拾趣

Hind Rectifiers Ltd公司的发展小趣事

故事一:Hind Rectifiers Ltd.的起源与早期发展

Hind Rectifiers Ltd.成立于1958年,自那时起,它便与Westinghouse、Brake & Signal(英国)等知名企业建立了深厚的合作关系。这家公司在电力半导体、电力电子设备和铁路运输设备的开发、设计、制造与销售方面,迅速积累了丰富的经验和技术实力。早期,Hind Rectifiers通过不断的技术引进与自主研发,逐步确立了其在印度电力电子行业中的领先地位。其产品线逐渐丰富,包括但不限于整流器、逆变器等关键电力电子元件,为印度乃至全球的工业发展提供了重要支持。

故事二:市场拓展与国际化战略

随着印度经济的快速增长和工业化进程的加速,Hind Rectifiers Ltd.积极实施市场拓展战略。公司不仅巩固了在国内市场的地位,还逐步将目光投向了国际市场。通过参加国际展会、建立海外销售网络等方式,Hind Rectifiers的产品远销至多个国家和地区。同时,公司还加强了与国际知名企业的合作,共同研发新技术、新产品,进一步提升了其国际竞争力。

故事三:技术创新与产品升级

技术创新是Hind Rectifiers Ltd.持续发展的核心动力。公司不断加大研发投入,引进先进生产设备和技术人才,致力于电力电子产品的更新换代和技术升级。近年来,Hind Rectifiers成功推出了多款高性能、高效率的电力电子产品,如高效能整流器、智能逆变器等,这些产品不仅满足了市场对高品质电力电子产品的需求,还为公司带来了显著的经济效益和社会效益。

故事四:应对市场波动与供应链管理

面对全球经济的波动和供应链的不确定性,Hind Rectifiers Ltd.展现了其强大的应对能力。公司通过建立多元化的供应链体系、加强与供应商的合作与沟通、优化库存管理等方式,有效降低了市场风险。同时,公司还注重提升内部管理水平,加强成本控制和质量管理,确保了在复杂多变的市场环境中保持稳健发展。

故事五:社会责任与可持续发展

作为一家具有社会责任感的企业,Hind Rectifiers Ltd.始终将可持续发展视为其发展的重要方向。公司积极参与社会公益事业,关注环境保护和能源节约。通过推广绿色制造、节能减排等措施,Hind Rectifiers为印度乃至全球的可持续发展贡献了自己的力量。同时,公司还注重员工培训和职业发展,为员工提供了良好的工作环境和发展平台,促进了企业与员工的共同成长。

EDO Corp公司的发展小趣事

进入1950年代,Eclipse Magnetics迎来了一次重要的创新。公司决定将磁铁涂上红色,这一独特的红色磁铁迅速在市场上获得了认可。同时,公司还设计了与红色磁铁相配的马蹄形标志,这一标志后来成为Eclipse Magnetics的国际通用标记。随着品牌的国际化,Eclipse Magnetics的产品开始进入全球市场。

AC Photonics Inc公司的发展小趣事

随着电子行业的快速发展和市场竞争的加剧,AC Photonics Inc也面临着诸多挑战。然而,公司始终保持着敏锐的市场洞察力和应变能力。在面对行业变革和技术升级时,公司能够及时调整战略方向,加大研发投入,推出更具竞争力的新产品。同时,公司还积极探索新的商业模式和市场机会,为未来的发展奠定了坚实的基础。


以上五个故事均是基于一般性的电子行业发展模式虚构的,旨在展示AC Photonics Inc公司可能的发展路径和经历。实际情况可能有所不同,具体细节需要参考公司的官方资料和历史记录。

Herotek Inc公司的发展小趣事

随着半导体技术的飞速发展,Henkel公司紧跟行业趋势,不断研发适用于半导体封装的高性能粘合剂。其研发的粘合剂产品不仅满足了半导体封装过程中对于高精度、高可靠性的要求,还显著提升了封装效率。例如,Henkel的某些粘合剂产品能够在极端温度条件下保持稳定的性能,确保半导体器件在各种工作环境中都能正常运行。这一技术突破为Henkel在半导体封装市场赢得了广泛的认可。

Blue Giga公司的发展小趣事

为了扩大市场份额和提升品牌影响力,Blue Giga积极寻求与各行业领导者的合作。它与微软、谷歌、英特尔等知名企业建立了战略合作伙伴关系,共同推动物联网和无线连接技术的发展。这些合作不仅为Blue Giga带来了更多的商业机会,也提升了其在行业中的地位。

GTE Microcircuits公司的发展小趣事
实现高频性能需要关注放大器的带宽和转换速率(Slew Rate)等参数。选择具有宽带宽和高转换速率的放大器是基础。此外,优化电路布局,减少寄生电容和电感的影响,以及采用适当的频率补偿技术也是提高高频性能的关键。

问答坊 | AI 解惑

我也来说两句

看了大家的招聘信息 有感而发:发现都是一些高端的人才需求信息。当然论坛中有很都高手,但是高手会这样找吗?大部分都是猎头找他吧! 而我们论坛,好多是泛泛之辈(包括我),还有大部分是学生,他们需要的是什么呢?我觉得是校园招聘和出奇的职 ...…

查看全部问答>

nios2软件架构解析 pdf

本书以Altera公司的技术资料为蓝本,结合作者多年的Nios软件开发经验,首先从复位、中断、编程环境、设备驱动以及应用程序二进制接口5个方面对NiosII软件架构进行横向揭密,接着又从汇编语法、makefile、链接脚本、调试手段以及开发技巧等多个角度 ...…

查看全部问答>

MDOC中的分区创建文件慢的问题!请高手指教!

我的软、硬件平台是:pxa270+wince5.0+2G MDOC (MDOC用的是sandisk的) 系统中我创建了一个data分区,专门用来存放私有数据,但是使用过程中发现,有时候在data分区下面创建一个文件或者文件夹非常慢,慢的时候要花4~5秒的时间,实在不能忍受!但 ...…

查看全部问答>

求一个低电压驱动的FET型号

最好小于7v的 主要给全桥用的…

查看全部问答>

用单片机测两矩形脉冲信号时间差

有两路矩形脉冲信号,,第一路只有1个矩形脉冲,第二路有多个矩形脉冲,如何用单片机定时器很好的测量它们的时间差呢? 两路信号应该接单片机的哪个或哪些引脚呢??请各路高手能给点指点,谢谢了!!…

查看全部问答>

mobile仿真中文乱码如何解决?

windows mobile仿真程序,中文乱码如何解决?…

查看全部问答>

请教:这些UPS参数都是什么啊?

最近在做和UPS有关的项目,协议中有一些参数,不知道是做什么的,请高手教一下: UPS echo schedule conut time AVR    AVR MODE PRE-SD COUNT SCHEDULE COUNT 直译过来后不知道对应UPS的什么功能,请对这方面熟悉的朋友不吝赐教, ...…

查看全部问答>

★★★晕死,STM32的ISP还是要用通讯之外的引脚来控制。谁给

   以前小菲的LPC2000 用引脚ISPEN来控制,给骂了一通,但还是没修改。   STM32竟然也用其它引脚来控制ISP。   系统复位的时候,串口收到N个特定字符即进入ISP,这样多好呀,肯定不会有误 ...…

查看全部问答>

flash内的中断向量怎么写进去?

flash内的中断向量怎么写进去? 我看有这样的一段文字: “到C2000的中断向量不可重定位,因此中断向量必须放在0地址开始的flash内。在调试系统时,代码放在RAM中,中断向量也必须放在flash内。” 假如我新买的dsp芯片刚焊上,flash 内还是 ...…

查看全部问答>