基于单片机的多功能轮椅的设计(源码+万字报告+讲解)

目录
摘要 2
Abstract 3
1 绪论 7
1.1设计背景 7
1.2 研究意义 8
1.2.1 理论意义 8
1.2.2 实际意义 9
1.3 国内外研究现状 9
1.3.1国外研究现状 9
1.3.2 国内研究现状 9
1.4 设计内容 10
1.5 设计要求 10
2 方案设计 11
2.1 总体方案 11
2.2 主要功能 12
2.3主控器的选择 13
2.4 机械手整体方案设计 14
2.4.1机械设计方案 14
2.4.2 控制设计方案 16
3 硬件电路设计 16
3.1 STM32 16
3.1.1 最小系统 16
3.1.2 超声波测距电路 17
3.1.3 语音识别电路 18
3.1.4 心律测量电路 18
3.1.5 摇杆电路 19
3.2 ATMEGA328P-AU 19
3.2.1 MCU 19
3.2.2 雨滴传感器电路设计 20
3.2.3 USB转串口电路 20
3.2.4 舵机电路设计 21
4 软件设计 21
4.1软件开发环境介绍 21
4.2 主程序流程 22
4.3 摇杆操作软件程序流程 22
4.4 系统设备端程序 24
4.5 逻辑设计的实现 25
4.6 客户端界面设计 26
5 总结与展望 28
5.1总结 28
5.2展望 28
附录 29

1 绪论
1.1设计背景
调查数据揭示,在我国,各种类型的残疾人总人数达到8296万,这占了整体人口的6.34%。其中,肢体残疾人群体超过2400万,占残疾人总人数的29.07%。而那些因严重肢体残疾而不能操纵普通轮椅的人数量则超过1000万,占据了相当高的比例。鉴于我国人口老龄化的进程,这个需求数字仍然以每年10%的比率持续上升,因此我们对智能型轮椅的需求量预计会不断增加。目前,在海外市场中,智能轮椅的售价普遍在2.5万至6万美元之间,而标准电动轮椅的定价也是在1000至1万美元之间,这种价格差距是我国普通民众难以容忍的。同时,制造这类轮椅需要严格的工艺水平。一旦出现故障,普通的维护人员难以迅速解决问题,这就导致在短期内难以进行大规模的应用推广。因此,市场急需一种性价比高的智能轮椅以满足人们多样化的需求。
随着社会进步与人类文明水平的不断增强,尤其是残障者,他们越来越需要借助先进的现代技术来提高自己的生活水平和生活自由范围。对多数身体有残障碍的人来讲,轮椅作为一种生活辅助工具,其在他们的日常生活中的角色正日趋重要。普通的轮椅能够满足轻度残疾人士的特定需求;但是,对于那些因残疾导致身体严重瘫痪或瘫痪的人,哪怕是电动轮椅也显得力不从心”。为了为这一群体创造更多的移动机会,全球的科研人员一直在积极推进智慧轮椅的研发。乌尔姆大学在德国已经成功研发了一款以计算机为核心处理单元的智能轮椅;与此同时,日本的索尼公司同样开发了一个能够通过检测用户脸部面部表情来调整运动方向的智能轮椅;那些建议具有智能化和高科技成分的电动轮椅,与普通电动轮椅相比,价格更高。使用开源Linux操作系统的无费嵌入式设备可以实现自主研发,而所需的资金较为经费。并呈现了出色的用户界面,即GUI。所以,探究基于嵌入式智慧轮椅的语音辨识技术,对帮助残疾人解决相关问题具有深远的影响。
1.2 研究意义
1.2.1 理论意义
如今,社会进步飞速,导致民众生活水平显著上升,而身体的障碍和老年人的身心障碍进一步导致了他们作为社会的弱势群体面临心理的不稳定。为了确保那些不能够正常完成日常生活要求的群体仍能体验到社会进步带来的益处,我们面临着一个亟需解决的关键问题,那就是提高残疾人轮椅的实际使用效益。设计师们需要更深入地了解和感受到这一需求,并确保其设计产品更加满足老年人的生理和使用习惯,使其成为真正人性化的产品。
普通的轮椅通常是为残疾人与老年人共同设计的。鉴于下肢的伤残和年纪增长可能导致腿部行动受限,这对于他们日常使用是个挑战,因此轮椅已逐渐成为他们每日生活中的主要交通工具。轮椅的诞生是为了为驾驶者带来一种不同的行走方式”。尽管残疾和老年人在生理和生理需求上都有所不同。对于那些年纪较小的残疾人群,虽然下肢存在残疾,上肢却体格强健。而对于身体逐渐衰老的老年人,体能的表现已大为不如过去。然而,在国内,关于老年人代步工具的设计并没有进行全面和针对性的深入研究。轮椅的设计常常过于侧重于残疾人与老年人的综合需求,没有真正研究出这些特定残疾老年人的具体需求。该文章研究了残障老年人的生活习惯和需求,根据他们对轮椅的特性需求来设计适合这一年龄段的轮椅,并以人性化的研究方法探讨了这一议题。老年群体在使用多功能轮椅时,主要的目的是为了降低他们运动的强度,实现更为简便、省力的操作方式,同时还能够自主地驱动轮椅行进,让用户更为轻松和高效。所以,对于老年人在出行时能够享受更为愉悦的生活,研制和开发高品质轮椅的研究意义不可小觑。
1.2.2 实际意义
目前,全球的研究人员正积极投入多功能轮椅技术的深度研究。在全球范围内,高质量的多功能轮椅主要由美国、德国、英国、瑞典和日本等地的制造商制造,但这些多功能轮椅相对价格较高,大多数的老年人和残障人士都无法支付其价格。国内存在众多公司均制造电动轮椅,但这些轮椅的控制系统在安全性和可靠性上都有待提高;或者说,多数多功能轮椅的核心控制器主要由进口公司制造,它们在国内进行了基本的机械构造设计和组合工作。因此,迫在眉睫的挑战是研发一个拥有自主知识产权、高度可靠的控制系统、成本低廉且易于用户体验的多功能新型轮椅。
1.3 国内外研究现状
1.3.1国外研究现状
1986年,英国启动了第一款多功能智能轮椅的研制过程,此后众多国家对这款轮椅进行了资金投向与深度研究。作为示例,我们有诸如法国的VAHM项目、西班牙的SIAMO项目、德国乌尔姆大学的MAID项目、加拿大AAI公司的TA0项目、欧盟的TIDE项目,以及Bremen Autonomous Wheelchair项目、KISS学院的TINMAN项目,还有美国麻省理工学院的WHELESLEY项目。鉴于各设计单位的目的和研究手段各异,不同轮椅所解决的问题以及所能达到的效能也有所不同。自1989年起,法国的VAHM项目开始执行,其研究团队致力于开发一种针对残疾人群设计的智能轮椅,这款轮椅无需用户过多的参与和干扰,具有高自主性。当进入全自动模式,轮椅的操作完全受限于计算机,用户只需按照特定的地方指令即可自动前往用户所指定的位置。运动过程中,这台轮椅具有自动绕开障碍的功能,帮助人们找到安全移动的路径。
1.3.2 国内研究现状
相较于国外的技术发展水平,我国在多功能智能轮椅的研究领域起始较晚,但我们还是结合了国内特有的技术特点,成功开发了接近国际领先标准的多功能轮椅。目前,多功能轮椅的主要学术研究机构包括中国科学院自动化所、台湾中正大学电机系、上海交通大学以及第三军医大学等等。设计趋势正在朝着借鉴国外科技发展,以实现更为智能和自动化的设计。也存在部分设计集体考虑到老年人特点,设计了适应我国老年群体需求的多用途轮椅。
在创新工程和国家“863”项目的支持之下,中科院自动化所在中科院成功推出了一款具备视觉与口令导航功能的轮椅,它还能与人类进行多模态互动。重庆邮电大学的国家信息无障碍工程研究中心专注于研发适用于多模态控制轮椅的新型手段。上海交通大学开发的这款多用途轮椅曾经在上海世博会以及老年福利机构提供过服务,并且引发了广泛的社会关注和反应。这把轮椅可以通过触摸屏、摄像头和麦克风与用户互动,用户只需指出他们的目的位置,这款轮椅即可自动找到并按照所需的移动方向前往目的地。浙江大学专门研究供老年人辅助站立的座位设计,与此同时,江南大学更加关注的是无障碍轮椅的开发。
相较于国外,我国在机构的复杂性、可变性以及市场的竞争优势上均存在差距。然而,我国的多功能轮椅研究已进入初始阶段,仍处于起步状态,亟需更众多学者深入探究其细节。
1.4 设计内容
方案设计,确定总体电路原理图;
按照电路原理图,选择元器件,并完成电路焊接;
绘制程序流程图,编写程序;
安装调试,实现多功能轮椅的基本功能。
1.5 设计要求
完成多功能轮椅的机械结构设计,并实现:
移动功能:通过摇杆和语音控制轮椅的前进、后退、转向等动作;
避障功能:当障碍物距离过近时,会减速刹车并发出警报,手动后退远离障碍物;
健康检测:可实现对使用者体温及心率血氧的检测,实时检测健康状况,传至显示屏和APP;
轮椅侧翻警报,APP显示“请注意用户安全”的文本;
定位功能:可以通过APP随时查看轮椅的GPS坐标,实现自主定位;
监护功能:监护人通过APP查看多功能轮椅周围情况;
遮雨功能:下雨时轮椅会自动展开雨篷,平时也可以手动打开;
娱乐功能:可以播放音乐放松心情;
照明功能:光线不足会打开照明设备;
夹取功能:手柄操控机械手夹取东西。

2 方案设计

2.1 总体方案
这篇研究文章的目标是开发出一款基于STM32和Arduino单片机的高功能轮椅,其中包含了摇杆、语音操控、障碍物侦测与避免、健康监测、侧翻警告、GPS位置与监控、雨棚调节、音乐播放、光线感应以及机械手臂的物品夹取功能,确保行动不便的人能够获得一种更为方便和安全的交通体验。多功能轮椅的构造将聚焦于STM32与Arduino两个关键的控制模块。STM32被设定为主控单元,主要负责管理和处理繁琐的控制逻辑以及数据的处理;Arduino在系统中充当了辅助性的控制器角色,主要任务是执行基本的输入/输出控制以及传感器的数据分析。这两者是通过串行通讯或其他方式相互沟通,确保全面的管理。

图2.1 系统方案
(1)系统方案
1)摇杆与语音控制模块
设计专用的摇杆和语音识别模块,通过STM32的GPIO接口和串行通信接口与主控制器连接。摇杆用于直接控制轮椅的前进、后退、转向和速度;语音识别模块则负责将用户的语音指令转换为控制信号,实现语音控制功能。
2)障碍物检测与避障模块
采用超声波或红外传感器进行障碍物检测,当检测到障碍物距离过近时,通过STM32控制轮椅减速刹车并发出警报。此时,轮椅进入手动模式,只能通过手动控制后退远离障碍物。
3)健康监测模块
集成体温、心率和血氧传感器,实时检测使用者的健康状况。通过STM32的数据处理功能,将监测数据通过蓝牙或Wi-Fi传输至手机APP和显示屏上显示。
4)侧翻警报模块
设计侧翻检测机制,当轮椅发生侧翻时,触发警报装置,确保使用者及时得到救援。
5)GPS定位与监控模块
集成GPS模块和摄像头,通过STM32实现GPS坐标的获取和周围环境的监控。通过手机APP,用户可以实时查看轮椅的位置和周围环境。
6)雨棚控制模块
设计手动和自动两种控制模式,根据天气情况或用户指令控制雨棚的开关。
7)音乐播放模块
通过按键控制,实现音乐的播放和切换功能。音乐文件存储在轮椅的存储介质中,通过STM32的音频输出接口播放。
8)光线感应模块
采用光敏传感器检测环境光线强度,当光线不足时,自动打开LED灯,为使用者提供照明。
9)机械手夹取模块
设计专用的机械手和手柄控制模块,通过STM32控制机械手的夹取动作,实现物品的抓取和放置功能。
2.2 主要功能
1)过摇杆和语音控制轮椅的前进、后退、转向、速度、启动和停车等动作;
2)当障碍物距离过近时,减速刹车并警报,此时只能手动后退远离障碍物;
3)可实现对使用者体温及心率血氧的检测,实时检测健康状况,显示在APP和显示屏;
4)轮椅侧翻发出警报;
5)通过APP查看轮椅GPS坐标和轮椅周围监控画面;
6)手动自动雨棚;
7)按键播放音乐;
8)光线不足会打开LED灯;
9)手柄控制机械手夹取东西。
2.3主控器的选择
STM32f103c8t6
STM32F103C8T6实际上是一款以ARM Cortex-M内核STM32系列32位微控制器为基础的中级微控制器单元。这款微控制器具备64KB 64K x 8闪存和ARM Cortex -M3 32位微控制器功能,同时也拥有STM32F1系列,其中STM32F103、48引脚、72MHz、3.3V 48-LQFP等特性。在控制设备上,程序的存储容量是64KB,所需的电压范围是2V~3.6V,工作时的温度应控制在-40°C到85°C之间。STM32F103C8T6被归类为STM32F103xx的中高密度性能系列。该产品内含高效的ARM Cortex -M3 32位RISC内核、具有128字节闪存能力的高速嵌入式存储器和20kWSRAM的最大容量存储。此外,它还配备了与两条APB总线连接的大量增强型I/o和其他外设功能。STM32F103C8T6配备了两台12位的ADC、三个通用的16位定时器和一个PLM定时器,同时提供了标准与高级的通讯接口:最多两台I2C和SPI、三台USARTs、一个USB以及一个CAN接口。STM32F103C8T6的电源来源是2.0至3.6 V的范围。其操作温度涵盖了–40至+35°C及–40至+105°C的扩展温度区间。一整套完善的节能策略为设计低电量使用创造了条件。

图2.2 引脚排列
ATMEGA328P-AU代表了一种集成电路 (IC)技术,其核心的处理器为AVR,拥有32KB的闪存能力。近些年,ATMEGA328P-AU型号经历了一些上涨,尽管其交易量没有明显增长,许多潜在买家仍然持保留的观点,他们认为其原发现货价格偏低,但实际库存有限,与之相反,进口货品的价格更高。

图2.3 引脚图
2.4 机械手整体方案设计
机械手是一个将机械和电子技术完美结合的系统,能够按预定的流程执行各种任务。例如,我们设计的这款多功能残疾人用轮椅机器可以完成如抓取纸杯、翻翻书本、取取汤匙等功能。在构造设计中,该多功能残障轮椅机械手主要由机械组件与动态控制两大部分构成,所以在这篇文章中,对于这台多功能残疾人轮椅机械手的设计,我们主要关注于机械的结构设计(如执行部件和驱动部件)以及控制模块两个关键部分。
2.4.1机械设计方案
在执行结构中,机械手手臂作为核心部件起着关键作用,它的主要职责是把被抓住的物体搬运到特定位置。因此,大部分的机器人手臂具备最少3个操作自由度,这包括可伸缩、旋转、俯仰和升降运动;臂部的整体质量相当高,其所承受的载荷一般也相当复杂。当臂部开始移动时,会直接承受手部和零件(或工具)的静态和动态载荷,特别是在速度极高的情况下,可能会产生较大的惯性力和力矩,导致冲击并影响定位的精准度。
在确定臂部的结构设计时,我们需要综合考虑机器人的活动方式、抓取的品质、动作的自由度和运动的精确度等关键因素。工业机器人中臂部的构造主要包括以下几类:
(1)圆柱坐标机器人的臂部结构:
(2)极坐标机器人的臂部结构;
(3)多关节型机器人的臂部结构,如SCARA 型等:
本文章中描述的助残轮椅机器手臂采用了关节式设计,并且是三自由度设计,从而能够轻松到达空间中的各种位置。机械手手腕是一个用于将末端执行器与手臂联接起来的组件,其主要功能是对工件的定位进行调整或更改,从而赋予机械手部末端执行器独立的操作自由度。由于手臂关节的旋转方式可以进一步细分为滚转和弯转两种形式,因此,这种腕部末端执行器在应对复杂任务时有着各自的特性。旋转关节能达到360°的顺畅运动,这种运动通常利用R进行标注;弯曲和转弯是一个概念,其中两个部件由于其内部设计的约束,它们的相对转动角度通常不超过360’,通常使用B作为表示符。经过深入分析,这篇文章所描述的多功能助残轮椅机械手选择了5种不同的自由度进行设计,分别为臂部的三种,腰部回转、大臂摆动和小臂摆动,腕部的两种自由度,即滚动和弯曲,具体的设计在下图的2.4部分有详细所示:

图2.4 机械手整体方案简图
在执行阶段时,需要保证反应迅速以及动态性能优良;再者,该设备需要操作的敏感性较高,这样更适于集中的控制。它应当拥有高效率、小巧的尺寸、轻便的质量、强大的自控能力以及高可靠性等技术亮点,并在决策时要充分考虑到价格的影响。通过对比分析,本文所提及的多功能助残轮椅机械手采用的是电气驱动方式。考虑其结构简洁、低成本、方便维护等因素,最终决定选择舵机。
2.4.2 控制设计方案
机械手的核心部分就是控制系统,其结构设计与功能稳定性及合适的构造方式都将决策系统功能的成功实现。在设计机械手的控制系统时,我们应该重视系统的可靠度、快速响应以及其性价比的方面。控制系统根据机械手的控制模块所发出的命令来启动相应任务,并对从传感器采集的数据进行综合处理,经过深入的分析,确保执行结构能执行相关任务和功能。控制方法主要分为两类:分散型和集中式。依据多功能助残轮椅机械手的功能设定和前面描述的机械结构设计方案,本研究选择单片机作为机械手的控制中心,而其他的控制板、驱动设备和传感器都会与这个单片机进行互动反馈的通信,以此来设计整个机器手臂的运动控制方案。选择舵控制板来驱动带有五个关节的舵;为了获得接近视觉的反馈信号,该感应机能在感知到前方有物体存在之后,向单片机发出终止命令,进而操纵舵机逆向旋转,以完成避障功能;我们采用了凌芯片来达成语音操控的目的。

3 硬件电路设计
3.1 STM32
3.1.1 最小系统

图3.1 最小系统
(1)摇杆和语音控制输入电路:通过摇杆和语音识别模块,接收用户的控制指令,并将其转换为STM32可识别的信号。
(2)传感器输入电路:包括障碍物检测传感器、体温及心率血氧检测传感器、侧翻检测传感器等。这些传感器的输出信号需要经过适当的处理和转换,才能被STM32读取。
(3)输出控制电路:包括电机驱动电路、LED灯控制电路、雨棚控制电路、机械手控制电路等。STM32通过控制这些电路,实现对轮椅的各种动作和功能的控制。
3.1.2 超声波测距电路
选择合适的超声波模块是实现超声波测距的关键。常用的超声波模块有HC-SR04等,这些模块具有测距范围广、测量精度高等优点。在本设计中,我们选择HC-SR04超声波模块作为测距模块。STM32微控制器通过GPIO引脚与超声波模块进行通信。超声波模块的四个引脚包括VCC(电源正极)、GND(电源负极)、Trig(触发引脚)和Echo(回声引脚)。其中,VCC和GND用于为超声波模块提供电源,Trig用于触发超声波的发射,Echo用于接收超声波的回声信号。在接口设计中,需要将STM32的某个GPIO引脚配置为输出模式,用于控制Trig引脚的电平变化,从而触发超声波的发射。同时,将另一个GPIO引脚配置为输入模式,用于读取Echo引脚的电平变化,从而检测超声波的回声信号。

图3.2 超声波测距电路
3.1.3 语音识别电路

图3.3 语音识别电路
在选择语音识别模块时,需要考虑识别准确率、响应速度、功耗以及与STM32的兼容性等因素。目前市面上有多种语音识别模块可供选择,如LD3320、ASR等。这些模块通常具有高度的集成性和易用性,能够方便地集成到STM32系统中。STM32与语音识别模块之间的通信协议是实现语音控制的关键。在设计中,需要定义好通信协议的格式和内容,包括起始位、数据位、校验位和停止位等。STM32通过串行通信接口发送控制指令给语音识别模块,并接收模块返回的识别结果。根据识别结果,STM32可以执行相应的控制动作。
3.1.4 心律测量电路
在选择心率测量传感器时,需要考虑测量精度、响应速度、功耗以及与STM32的兼容性等因素。目前市场上有多种心率测量传感器可供选择,如光电传感器、心电传感器等。光电传感器通常利用光吸收原理来检测心率,具有非侵入性、易于集成等优点;而心电传感器则通过检测心电信号来测量心率,具有更高的精度。根据实际应用需求,本设计选择光电传感器作为心率测量传感器。STM32通过GPIO引脚与心率测量传感器进行通信。STM32控制LED的闪烁频率,并读取光敏二极管的信号变化。为了获得准确的心率数据,STM32可以采用一定的算法对信号进行处理,如计算信号周期、去除异常值等。处理后的心率数据可以通过串口通信或其他通信方式发送到APP或显示屏进行显示。

图3.4 心律测量电路
3.1.5 摇杆电路
在选择摇杆输入设备时,需要考虑其精度、耐用性和与STM32的兼容性。常见的摇杆输入设备包括模拟摇杆和数字摇杆。模拟摇杆可以输出连续的模拟信号,适用于需要精确控制的应用场景;数字摇杆则输出离散的数字信号,适用于简单的控制需求。根据本设计的需求,我们选择模拟摇杆作为输入设备。STM32通过ADC接口读取摇杆输出的模拟信号,并将其转换为数字信号。然后,STM32根据数字信号的值判断用户的操作意图,并生成相应的控制指令来控制轮椅的动作。为了实现对轮椅的精确控制,STM32可以采用一定的算法对摇杆信号进行处理,如平滑滤波、阈值判断等。

图3.5 摇杆电路

3.2 ATMEGA328P-AU
3.2.1 MCU
本设计将围绕ATMEGA328P-AU MCU进行电路设计,以满足轮椅的多功能需求。

图3.6 MCU电路
3.2.2 雨滴传感器电路设计
雨滴传感器通常采用电容式或电阻式原理进行工作。电容式传感器通过检测雨滴对电容值的影响来判断是否有雨水,而电阻式传感器则利用雨滴在传感器表面形成导电通路,导致电阻值的变化来检测雨水。

图3.7 雨滴传感器电路
3.2.3 USB转串口电路
USB转串口电路的核心原理是通过USB接口将数字信号转换为串行数据信号,以便与串口设备进行通信。具体来说,当计算机或其他USB设备发送数据时,USB转串口电路将接收到的USB信号转换为串口设备可以识别的串行数据信号;反之,当串口设备发送数据时,USB转串口电路将接收到的串行数据信号转换为USB信号,并发送给计算机或其他USB设备。

图3.8 USB转串口电路
3.2.4 舵机电路设计
舵机是一种带有减速齿轮组的直流伺服电机,其内部包含一个电位计来检测输出轴的角度位置,并与控制信号进行比较,以驱动电机转动至目标角度。舵机通过接收PWM(脉宽调制)信号来控制其旋转角度,PWM信号的占空比决定了舵机的目标角度。

图3.9 舵机电路
4 软件设计
4.1软件开发环境介绍
Arduino IDE是由Arduino团队专为Arduino定制的一种编程软件应用。用户可以利用这个Arduino IDE平台,把程序代码上传到Arduino的主板上。Arduino IDE拥有大量的库中文档,它兼容众多通用操作系统,并允许多平台交互,使得用户能够方便地进行二次开发操作[22]。这一开发系统具有高性价比,模块化的功能和可调整性,编程语言易于理解,对于系统内部硬件结构或寄存器配置也没有特定要求。Proteus软件为英国Lab Center Electronics公司制定,并作为EDA的工具进行发行。此工具不仅拥有其他EDA工具软件的仿真能力,同时也具备模拟单片机和外围组件的能力,堪称是一个高效的仿真单片机和外围部件的工具。APP Inventor 2是Google为您提供的一个无成本的在线编程工具,它能为Android操作系统的用户迅速开发出适用于他们的软件应用。与传统编程语言有所不同,例如Java与C++以及App Inventor的视觉设计界面,这些都使得开发者可以便捷地设定应用程序的功APP开发潜能和具体操作。
4.2 主程序流程
依据智能轮椅设计的具体运行状况,系统的主要程序流程如图4.1所示。整个智能轮椅软件的整体架构是由该系统的主要程序制定的,这也构成了系统运行的主要程序基准。这个系统主要承担了诸如硬件的初始化,循环中接收轮椅的控制指令,以及控制电机的操作等多项功能。

图4.1 系统主程序流程

4.3 摇杆操作软件程序流程
在程序设计中,轮椅使用者的特定需求、安全保障和运行的稳定性是首要任务,他们通常依靠传感器来识别环境内的障碍物和进行联合控制,其中手动控制的重要性明显高于自动控制
轮椅启动之后,整套系统得到供电模块的供电支持。在此阶段,单片机开始执行预定的程序,并对各模块进行初级处理。为确保用户的安全性,在初始启动时,整个车辆被默认为手动模式(见图4.2。在这一模式下,用户需要推动摇杆向其前方,随后经过AD转换处理,单片机得到了一个X= 2.5和Y>2.5的坐标信息(2.5,a)。在这个坐标上,程序会产生PWM波,并通过驱动模块驱动电机使轮毂前进。同时,单片机指导舵机将角度调整至90°,确保轮椅直线前行;当使用者把摇杆推向右前方,单片机会生成一个X>2.5和Y>2.5的坐标(a,b),在这一点上,电机开始向前旋转,从而促使轮椅继续前行,其旋转角度c被设置为:

舵机会向c方向转动,轮椅将顺着这个c方向向右前方前进。当用户把摇杆推进左前方时,单片机会获取一个坐标,X<2.5,Y>2.5,此时电机也将前进以推进轮椅,旋转角度c被定义为此坐标点:

舵机会改变其操作方向,旋转至c的角度,这时轮椅就会沿着c角度朝左前方行进。用户可以向正后方推动摇杆,此时单片机会计算出一个X=2.5,Y<2.5的坐标值(标记为2.5,a)。在这个时候,电机会开始后退,使轮椅直线后退;如果用户推动摇杆向右后方移动,单片机会得到X>2.5的坐标,即Y<2.5的位置(a和b)。在这个时候,电机会向后方旋转,迫使轮椅后退,此时的角度c会是:

舵机即将旋转到c这个角度,而轮椅会沿着c的角度朝正后方前行
当用户尝试将摇杆往左后方推进,单片机便会计算得到一个X<2.5,Y<2.5的坐标(a,b),这意味着电机正进行后退的动作,从而让轮椅产生一个c的旋转角度:

舵机将旋转至c角度,轮椅沿c角度向左后方行驶.

图4.2 摇杆操作软件程序流程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值