版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于STM32的太阳能智能轮椅控制系统设计摘要随着我国人口老龄化进程加快,残障群体与老年群体的出行辅助需求持续提升,传统电动轮椅存在续航能力有限、控制模式单一、智能辅助功能不足等问题,难以适配特殊群体多样化的出行场景。本文设计了一套以STM32F103C8T6单片机为核心的太阳能智能轮椅控制系统,系统集成太阳能供电与蓄电池充放电管理单元,可实现户外场景下的持续续航;同时搭载按键控制、手机APP控制、语音交互控制三种运动控制模式,适配不同身体状况使用者的操作需求;配套红外循迹、超声波避障与报警功能,可实现固定路线自主行走与障碍物安全预警,通过OLED屏实时显示轮椅运行状态与各项参数。经测试,系统运行稳定可靠,功能完整,操作便捷,成本可控,能有效提升老年与残障群体出行的安全性、便利性与自主性,具备较强的实用价值与推广前景。关键词:STM32单片机;太阳能供电;智能轮椅;运动控制;人机交互AbstractWiththeaccelerationofpopulationaginginChina,thedemandfortravelassistanceforthedisabledandtheelderlycontinuestoincrease.Traditionalelectricwheelchairshaveproblemssuchaslimitedbatterylife,singlecontrolmode,andinsufficientintelligentauxiliaryfunctions,whicharedifficulttoadapttothediversetravelscenariosofspecialgroups.ThispaperdesignsasetofsolarintelligentwheelchaircontrolsystemwithSTM32F103C8T6microcontrollerasthecore.Thesystemintegratessolarpowersupplyandbatterychargeanddischargemanagementunit,whichcanrealizecontinuousbatterylifeinoutdoorscenes.Atthesametime,itisequippedwiththreemotioncontrolmodes:keycontrol,mobileAPPcontrolandvoiceinteractioncontrol,toadapttotheoperationneedsofuserswithdifferentphysicalconditions.Itisequippedwithinfraredtracking,ultrasonicobstacleavoidanceandalarmfunctions,whichcanrealizeautonomouswalkingonfixedroutesandsafetywarningofobstacles.TherunningstatusandvariousparametersofthewheelchairaredisplayedinrealtimethroughtheOLEDscreen.Thetestresultsshowthatthesystemrunsstablyandreliably,hascompletefunctions,iseasytooperateandcontrollableincost.Itcaneffectivelyimprovethesafety,convenienceandautonomyoftravelfortheelderlyandthedisabled,andhasstrongpracticalvalueandpromotionprospect.Keywords:STM32Microcontroller;SolarPowerSupply;IntelligentWheelchair;MotionControl;Human-ComputerInteraction目录17695摘要 I7400Abstract II243201绪论 5144821.1研究背景和意义 560721.1.1研究背景 552201.1.2研究意义 5304561.2国内外研究现状 642571.2.1国内研究现状 6240401.2.2国外研究现状 6194552功能与设计方案 7209652.1系统的功能要求 766212.2系统设计方案 757362.3器件方案对比 8161592.3.1主控芯片选型 8222452.3.2电机驱动芯片选型 9212462.3.3显示单元选型 9268523系统的硬件设计 11192803.1STM32F103单片机 11121953.2太阳能供电与电源管理电路 12143543.3直流电机驱动电路 12138233.4红外循迹检测单元 1341533.5超声波避障检测单元 14308433.6按键控制单元 15169173.7OLED显示单元 15267763.8语音识别与交互单元 1630223.9WiFi通信单元 17153274系统的软件设计 1912174.1软件介绍 19277234.2软件程序的设计 19181194.2.1主程序流程图 19156094.2.2按键子程序流程 20242314.2.3显示子程序流程 21279635系统的测试 2395525.1硬件调试 23219055.2软硬件联合调试 23285435.3实物展示 23176795.3.1太阳能供电与电源管理功能测试 23122905.3.2按键控制功能测试 24274425.3.3语音交互控制功能测试 2418621结论 2514651参考文献 2626898谢辞 2916264附录A 303173附录B 311绪论1.1研究背景和意义1.1.1研究背景第七次全国人口普查数据显示,我国60岁及以上人口已超2.64亿,占总人口比重18.70%,同时我国残障群体规模已超8500万人,其中肢体残障人士占比近30%。轮椅作为肢体残障人士与行动不便老年人的核心出行辅助工具,其智能化、便捷化水平直接影响该群体的生活质量与社会参与度。传统手动轮椅依赖使用者上肢力量驱动,对体力要求较高,多数老年与重度肢体残障人士无法独立使用;市面主流电动轮椅虽解决了动力问题,但仍存在明显短板:多数产品仅支持摇杆或按键单一控制模式,无法适配手部失能群体的操作需求;依赖市电充电,户外出行续航受限,偏远场景与长途出行难以保障;缺乏智能安全辅助功能,障碍物碰撞、路线偏离等安全风险较高,视力不佳的使用者难以独立应对复杂路况。在此背景下,开发一款多模式控制、续航能力强、具备智能安全辅助功能的智能轮椅控制系统,具备极强的现实必要性。1.1.2研究意义本文设计的基于STM32的太阳能智能轮椅控制系统,针对传统电动轮椅的核心痛点进行优化升级,具备多方面的实际价值。在使用层面,系统集成按键、手机APP、语音交互三种控制模式,可适配不同身体状况使用者的操作需求,手部失能群体可通过语音指令完成全部操作,大幅降低轮椅的使用门槛;太阳能供电方案可实现户外场景下的持续充电,有效解决传统电动轮椅的续航焦虑,拓展出行范围。自动循迹功能可实现室内走廊、医院通道、家庭固定路线的自主行走,超声波避障与报警功能可提前识别前方障碍物并触发预警,避免碰撞事故,为视力不佳、反应迟缓的老年使用者提供全方位的安全保障。在产业层面,系统采用低成本、高通用性的元器件,整体方案易于改装与量产,可直接适配市面多数普通电动轮椅的升级改造,大幅降低智能轮椅的使用成本,推动辅助出行器具的普及与智能化升级,对提升特殊群体的生活品质、推动无障碍环境建设具备积极意义。1.2国内外研究现状1.2.1国内研究现状国内智能轮椅相关研究起步于21世纪初,近年来随着老龄化程度加深与辅助器具产业发展,相关技术研究与产品落地进程持续加快。国内高校与科研机构围绕智能轮椅的核心技术开展了大量研究,清华大学、哈尔滨工业大学等高校先后研发出具备环境感知、自主导航、多模式人机交互功能的智能轮椅样机,突破了多传感器融合、运动精准控制等关键技术。国内医疗器械企业已实现电动轮椅的规模化量产,鱼跃、九圆、互邦等品牌的电动轮椅产品已占据国内主流市场,但多数产品仍以基础电动驱动功能为主,高端智能轮椅产品存在功能单一、价格高昂的问题,具备语音控制、自主导航功能的产品售价普遍过万元,普通家庭难以承受。同时,现有产品大多未集成太阳能供电方案,户外续航能力不足,智能辅助功能的场景适配性较差,针对老旧小区、乡村道路等非标准化场景的优化不足,难以满足国内使用者的多样化需求。1.2.2国外研究现状国外智能轮椅技术研究起步较早,欧美、日本等发达国家在辅助器具领域的技术积累深厚,相关产品的智能化与成熟度处于领先水平。日本松下、丰田等企业已推出多款商业化智能轮椅产品,集成了环境感知、自主避障、语音控制、室内导航等功能,部分产品可实现与智能家居系统的联动,适配老年群体的居家与社区出行场景;瑞士、美国的相关企业研发的高端智能轮椅,可实现复杂路况的自适应调节、远程监控与呼救功能,安全保障体系更为完善。但国外成熟的智能轮椅产品普遍存在价格极高的问题,高端产品售价折合人民币普遍超过10万元,国内普及率极低;同时产品的设计理念与使用场景针对国外环境开发,针对国内老旧小区、狭窄通道、乡村道路等场景的适配性不足,操作逻辑与功能设置不符合国内老年群体的使用习惯。此外,国外产品的维修与升级成本较高,售后体系在国内覆盖不足,难以满足国内普通家庭的使用需求。2功能与设计方案2.1系统的功能要求结合老年与肢体残障群体的实际使用需求,本次设计的智能轮椅控制系统需满足基础运动控制、可持续供电、智能辅助、人机交互、安全保障五大类核心需求,具体功能要求如下:可实现轮椅的前进、后退、左转、右转、停止五个基础动作,支持转速调节,动作响应精准无延迟,同时具备备用控制方案,单一控制模式异常时可快速切换其他模式,保障使用安全。采用太阳能板搭配锂电池的双供电方案,户外光照环境下可实现锂电池的实时充电,延长续航时间;具备完善的充放电保护功能,可实现过充、过放、过流、反接保护,保障电池使用寿命与用电安全。支持三种控制方式,一是通过物理按键实现基础运动控制,适配习惯传统操作的使用者;二是通过手机APP实现无线控制,支持虚拟按键操作与模式切换;三是通过离线语音指令实现控制,无需手动操作即可完成全部基础动作与模式切换,适配手部行动不便的使用者。支持自动循迹模式,通过红外检测单元识别地面黑色循迹线,实现固定路线的自主行走;支持障碍物检测功能,通过超声波单元实时检测前方障碍物,测算距离并判断安全风险。遇到障碍物、电池欠压、系统故障时,可通过蜂鸣器触发对应模式的报警提示;通过OLED屏实时显示轮椅的运行模式、电池电量、障碍物距离、运动状态等信息,故障状态下可显示对应故障代码,方便排查问题。2.2系统设计方案核心控制单元上电完成初始化后,持续采集环境感知单元的红外循迹信号、超声波测距信号,同时实时接收来自按键、语音识别、WiFi通信单元传输的控制指令,按照预设的控制逻辑对输入信号进行处理,判断当前工作模式与运动指令,向运动执行单元输出对应的控制信号,通过电机驱动电路控制四个直流电机的正反转、停止与转速,实现轮椅的精准运动控制。运行过程中,核心控制单元会将轮椅的运行模式、电池电量、障碍物距离、运动状态等信息,实时传输至OLED显示单元进行展示,同时通过WiFi通信单元同步至手机APP;当检测到障碍物距离小于安全阈值、电池电量低于欠压阈值、系统出现故障时,立即触发蜂鸣器报警单元,发出对应模式的报警提示,同时停止电机运行,避免安全事故发生。系统整体方案采用高通用性的元器件,电路设计简洁,控制逻辑清晰,具备较强的稳定性与可维护性。图2.1系统硬件模块工作框图2.3器件方案对比2.3.1主控芯片选型方案一:STC89C52单片机STC89C52基于8051架构,开发门槛低,采购成本低廉,基础外设可满足简单控制需求,但芯片采用8位处理器,最高主频仅12MHz,数据处理能力有限,内存与闪存空间较小,无法同时处理多路传感器信号、多通道电机控制、语音识别、无线通信等多任务并行需求,外设接口数量不足,难以适配系统多外设的连接需求,整体性能无法满足系统设计要求。方案二:STM32F103C8T6单片机STM32F103C8T6基于32位ARMCortex-M3内核,最高主频可达72MHz,具备极强的多任务数据处理能力,内置64KB闪存与20KB运行内存,可承载复杂的控制逻辑与算法;芯片集成丰富的GPIO、USART、SPI、IIC、定时器等外设接口,可同时适配系统所有外设的连接需求,无需额外扩展电路;芯片支持低功耗运行模式,适配电池供电的便携设备,开发资料丰富,工业级芯片具备极强的抗干扰能力与稳定性,完全满足系统的设计需求。综合对比后,本次设计选用STM32F103C8T6作为系统主控芯片。2.3.2电机驱动芯片选型方案一:L298N电机驱动芯片该芯片支持双路电机驱动,输出电流大,可适配直流电机的正反转控制,但芯片静态功耗较高,工作过程中发热严重,需要额外加装散热装置,增加了系统体积与硬件成本;芯片体积较大,四路电机驱动需要多片芯片级联,电路设计复杂,占用空间较大,不适合轮椅的紧凑安装场景,功耗表现也不符合电池供电设备的需求。方案二:SDC9150单桥电机驱动芯片SDC9150内置过流、过热、短路保护功能,单芯片可驱动一路直流电机,输出电流可达1.8A,完全满足轮椅直流减速电机的驱动需求;芯片静态功耗极低,转换效率高,工作过程中发热量小,无需额外散热装置,外围电路仅需少量滤波电容,电路设计简洁,布局灵活,四片芯片可分别控制轮椅的四个电机,实现四轮独立驱动,精准控制电机的正反转与转速,适配轮椅的紧凑安装场景与低功耗需求。综合对比后,本次设计选用SDC9150作为电机驱动芯片。2.3.3显示单元选型方案一:LCD1602字符显示屏LCD1602显示屏采购成本低,开发难度小,可满足基础字符显示需求,但显示屏仅能显示两行16个英文字符与数字,无法显示中文、图形与多组数据,无法满足系统运行模式、电池电量、障碍物距离、故障代码等多信息同步显示的需求;显示屏采用并行接口,需要占用大量IO口资源,电路设计复杂,可视性较差,户外强光环境下难以清晰读取内容,无法适配轮椅的户外使用场景。方案二:OLED显示屏OLED采用IIC串行通信接口,仅需两根信号线即可完成通信,占用极少的IO口资源,电路设计简洁;显示屏分辨率为128*64,可同时显示中文、英文、数字与图形,能分区域展示系统多组运行参数,满足信息显示需求;屏幕采用自发光技术,无需背光源,功耗极低,对比度高,在强光与弱光环境下均可清晰显示,适配轮椅的全场景使用需求。综合对比后,本次设计选用0.96寸OLED屏作为系统显示单元。
3系统的硬件设计3.1STM32F103单片机整个系统的稳定运行,完全依赖主控最小系统提供的基础运行环境,本次设计的最小系统电路,围绕STM32F103C8T6芯片搭建,包含晶振电路、复位电路、BOOT设置电路、电源滤波电路与引脚外引电路五大核心部分。晶振电路分为两路,主晶振采用8MHz无源晶振,搭配两个22pF谐振电容,为芯片提供精准的主频时钟,保证程序运行的时序稳定;RTC晶振采用32.768kHz无源晶振,为芯片内置的实时时钟模块提供时钟源,满足低功耗计时需求。复位电路采用上电复位与按键复位结合的设计,通过10k上拉电阻与104电容组成RC复位电路,上电时自动完成复位,系统运行异常时可通过按键手动复位,保证系统可快速恢复正常运行。BOOT设置电路通过10k电阻将BOOT0与BOOT1引脚下拉至地,设置芯片为闪存启动模式,上电后直接运行闪存内的用户程序。电源滤波电路在芯片的每个电源引脚旁,都放置了0.1μF的陶瓷滤波电容,同时在电源入口处并联100μF的极性电容,组成滤波网络,有效滤除电源纹波,抑制电源干扰,保证芯片供电稳定。引脚外引电路通过2.54mm间距的排针,将芯片所有可用的IO口全部引出,方便与各个外设电路完成连接,整个最小系统电路布局紧凑,抗干扰能力强,为整个系统的稳定运行提供了可靠的核心支撑。图3.1STM32F103单片机接线情况3.2太阳能供电与电源管理电路本次设计的供电与电源管理电路,采用太阳能板搭配锂电池的双供电架构,同时设计两级稳压电路与完善的保护机制,满足系统各个单元的供电需求。系统主供电采用12V/10Ah锂电池组,搭配18V/10W单晶硅太阳能板,太阳能板通过充放电管理芯片与锂电池组连接,户外光照充足的环境下,太阳能板可将光能转换为电能,实时为锂电池组充电,有效延长轮椅的户外续航时间,充放电管理芯片内置过充、过放、过流、短路保护功能,可有效保护锂电池组,延长电池使用寿命。电源管理电路采用两级稳压设计,第一级通过LM7805三端稳压芯片,将锂电池输出的12V直流电压转换为稳定的5V电压,为超声波检测、WiFi通信、蜂鸣器报警单元供电;第二级通过XC6206低压差稳压芯片,将5V电压转换为3.3V稳定电压,为主控芯片、OLED显示、语音识别单元供电。两级稳压电路的输入端与输出端,都设计了极性电容与无极性电容组成的滤波网络,有效抑制电源纹波,降低电源干扰,保证各个单元的供电稳定。图3.2太阳能供电与电源管理电路3.3直流电机驱动电路轮椅的运动控制精度与运行稳定性,直接由电机驱动电路的性能决定,本次设计采用四轮独立驱动方案,通过四片SDC9150单桥电机驱动芯片,分别控制轮椅四个角的12V直流减速电机,实现轮椅前进、后退、转向的精准控制。每一片SDC9150芯片的两个输入引脚,分别连接主控芯片的通用IO口,两个输出引脚直接对应连接一路直流电机的两个接线端,主控芯片通过向输入引脚输出不同的高低电平组合,可直接控制电机的正转、反转与停止状态;通过定时器输出不同占空比的PWM信号,可调节芯片输出的平均电压,实现电机转速的精准调节,进而控制轮椅的行进速度。芯片内置完善的保护机制,当电机出现堵转、过流、过热情况时,芯片会自动关断输出,避免电机与驱动芯片因过载损坏,无需额外设计保护电路。芯片的外围电路设计极为简洁,仅需在电源引脚旁并联滤波电容,即可实现稳定工作,无需额外的分立元件,大幅简化了电路布局,降低了硬件故障概率。四片驱动芯片采用对称式布局,分别对应轮椅的左前、右前、左后、右后四个电机,接线路径清晰,后期维护与检修极为便捷,驱动效率高,可稳定输出电机运行所需的电流,满足轮椅在平路、缓坡等不同路况下的运动需求,实现轮椅的平稳起步、匀速行进与精准转向。图3.3直流电机驱动电路3.4红外循迹检测单元室内走廊、医院通道、家庭固定路线等场景下,使用者需要轮椅实现自主循迹行走,无需持续手动控制,本次设计的红外循迹检测单元,可精准识别地面的黑色循迹线,为轮椅自主行走提供路线判断依据。单元采用两路TCRT5000红外反射式光电传感器,分别安装在轮椅前端的左右两侧,安装间距与循迹线宽度匹配,传感器内部集成了红外发射管与红外接收管,可通过红外光的反射情况,判断地面的颜色与材质差异。传感器工作时,红外发射管持续向外发射固定波长的红外光,当传感器正对白色地面时,红外光会被地面大面积反射,红外接收管接收到反射的红外光后,内部三极管导通,传感器输出端输出低电平;当传感器正对黑色循迹线时,红外光会被黑色材质吸收,红外接收管无法接收到反射的红外光,内部三极管截止,传感器输出端输出高电平。两路传感器的输出引脚分别连接主控芯片的IO口,主控芯片通过实时检测两路传感器输出的电平状态,即可判断循迹线与轮椅的相对位置:当两路传感器都输出低电平时,轮椅处于循迹线正上方,保持直行;当左侧传感器输出高电平、右侧输出低电平时,轮椅向左偏离路线,控制右侧电机加速、左侧电机减速,实现向右修正方向;当右侧传感器输出高电平、左侧输出低电平时,轮椅向右偏离路线,控制左侧电机加速、右侧电机减速,实现向左修正方向。电路中加入了可调电阻,图3.4红外循迹检测单元3.5超声波避障检测单元轮椅出行过程中,需要提前识别前方障碍物,避免碰撞事故,尤其是视力不佳的使用者,无法及时发现前方的障碍物,需要系统提供可靠的障碍物检测与预警功能,本次设计的超声波避障检测单元,可精准测算轮椅与前方障碍物的距离,为安全预警与制动提供数据支撑。单元采用HC-SR04超声波测距传感器,安装在轮椅前端的中间位置,传感器的触发引脚与回波引脚分别连接主控芯片的IO口,可实现非接触式距离检测,测距范围覆盖2cm-400cm,测量精度可达3mm,完全满足轮椅的避障检测需求。传感器工作时,主控芯片通过IO口向触发引脚输出持续时间大于10us的高电平信号,触发传感器自动发射8个频率为40kHz的方波信号,同时传感器内部的检测电路开始检测回波信号;当发射的超声波遇到前方障碍物后,会发生反射,回波信号被传感器接收后,回波引脚会输出与检测距离成正比的高电平信号,高电平的持续时间,与超声波从发射到接收的时间完全一致。图3.5超声波避障检测单元3.6按键控制单元对于习惯传统操作方式的使用者,或是语音、APP控制模式出现异常时,需要一套可靠的手动控制方案,本次设计的按键控制单元,作为系统的基础控制方式与备用控制方案,可实现轮椅的基础运动控制与模式切换,操作逻辑简单直观,适配绝大多数使用者的操作习惯。单元设计了四路独立的轻触按键,分别对应前进、后退、左转、右转四个基础运动指令,同时设计了模式切换按键,可实现手动控制、自动循迹两种工作模式的快速切换。所有按键都采用一端连接主控芯片IO口、另一端直接接地的连接方式,主控芯片对应的IO口设置为内部上拉输入模式,常态下,IO口通过内部上拉电阻保持高电平状态;当按键被按下时,IO口与地直接连通,电平状态变为低电平,主控芯片通过检测IO口的电平变化,即可识别对应的按键操作。为了避免按键机械结构带来的抖动问题,导致系统出现误触发,设计了软件消抖机制,当主控芯片检测到IO口电平变化后,会延迟10ms再次检测IO口电平,若两次检测结果一致,才判定为有效按键操作,有效过滤了按键抖动带来的干扰。按键操作逻辑采用长按持续执行、松开立即停止的设计,使用者长按对应按键时,轮椅持续执行对应的运动动作,松开按键后,电机立即停止运行,避免误触按键导致的安全风险;模式切换按键按下后,系统会立即切换工作模式,同时在OLED屏上更新当前模式,蜂鸣器发出提示音,提醒使用者模式切换成功。整个单元的电路设计简洁,操作逻辑符合使用者的日常习惯,同时作为系统的备用控制方式,即使其他控制模式出现异常,使用者也可通过按键完成轮椅的全部基础操作,大幅提升了系统的冗余性与运行可靠性。图3.6按键控制单元3.7OLED显示单元使用者在使用轮椅的过程中,需要实时了解轮椅的运行状态、电池剩余电量、工作模式、障碍物距离等关键信息,系统出现故障时,也需要直观的提示帮助使用者排查问题,本次设计的OLED显示单元,可实现系统全部运行信息的实时展示,为使用者提供清晰直观的状态反馈。单元采用0.96寸128×64分辨率的OLED显示屏,驱动芯片为SSD1306,通过IIC串行总线与主控芯片实现通信,硬件连接仅需四根线,分别为3.3V电源、地线、SDA串行数据线、SCL串行时钟线,占用极少的IO口资源,电路设计简洁,布线难度低。显示屏采用自发光技术,无需额外的背光源,静态工作电流仅为几微安,功耗极低,适配电池供电的便携设备;屏幕对比度可达10000:1,可视角度接近180度,即使在户外强光直射的环境下,也可清晰读取显示内容,弱光环境下也不会出现刺眼的情况,适配轮椅的全场景使用需求。主控芯片通过IIC总线,向显示屏发送初始化指令与显示数据,可实现清屏、字符显示、中文显示、图形绘制等功能,系统运行时,屏幕采用分区域布局设计,顶部区域显示当前的工作模式,中间左侧区域显示电池剩余电量,中间右侧区域显示前方障碍物的实时距离,底部区域显示当前的运动状态,各个区域的内容独立刷新,保证显示的实时性。图3.7OLED显示单元3.8语音识别与交互单元对于手部重度失能、无法完成按键或触屏操作的使用者,需要一套无需手动接触的控制方式,本次设计的语音识别与交互单元,可通过离线语音指令实现轮椅的全部控制功能,无需手动操作,也无需连接网络,极大降低了轮椅的使用门槛,适配特殊群体的操作需求。单元采用SU-03T离线语音识别芯片,芯片内置高性能语音识别处理器、音频采集电路与功率放大电路,外围仅需搭配麦克风与扬声器,即可完成语音指令的采集、识别、处理与语音反馈播放,无需额外的辅助电路,硬件设计简洁。芯片通过USART串行接口与主控芯片连接,串口波特率设置为9600,可实现与主控芯片的稳定通信,芯片支持自定义语音指令,本次设计预先录入了前进、后退、停止、左转、右转、开启循迹、关闭循迹、电量查询等常用控制指令,使用者可直接通过语音发出对应指令,实现轮椅的全功能控制。芯片工作时,通过麦克风采集使用者的语音信号,内置的算法对语音信号进行降噪、特征提取与匹配识别,识别到预设的有效指令后,立即通过串口向主控芯片发送对应的指令代码,主控芯片接收到指令代码后,执行对应的控制动作,同时向语音芯片发送反馈指令,通过扬声器播放对应的语音反馈,告知使用者指令已执行。图3.8语音识别与交互单元3.9WiFi通信单元使用者需要通过手机实现轮椅的远程无线控制,同时家属也需要实时查看轮椅的运行状态与位置,保障使用者的出行安全,本次设计的WiFi通信单元,可实现主控芯片与手机APP之间的双向无线通信,完成控制指令传输与运行状态回传功能。单元采用ESP8266-12FWiFi模块,模块内置完整的TCP/IP协议栈,支持STA与AP两种工作模式,可灵活适配不同的使用场景,模块通过USART串行接口与主控芯片连接,串口波特率设置为115200,主控芯片可通过串口向模块发送AT指令,实现WiFi网络连接、TCP连接建立、数据收发等全部功能,硬件连接仅需四根线,电路设计简洁,开发难度低。系统工作时,模块可通过STA模式连接到家庭或户外的WiFi热点,与连接在同一网络下的手机APP建立TCP连接,实现局域网内的无线控制;也可通过AP模式建立热点,手机直接连接模块发出的热点,即可建立通信连接,无需依赖外部WiFi网络,适配户外无WiFi网络的使用场景。使用者通过手机APP上的虚拟按键,发出前进、后退、左转、右转、模式切换等控制指令,模块接收到指令数据后,通过串口传输给主控芯片,主控芯片对指令进行解析后,执行对应的控制动作,实现手机APP对轮椅的无线控制;同时,主控芯片会实时将轮椅的运行模式、电池剩余电量、障碍物距离、运动状态等信息,通过串口发送给WiFi模块,模块再通过TCP连接,将数据实时回传到手机APP上,方便使用者与家属查看。图3.9WiFi通信单元
4系统的软件设计4.1软件介绍本系统的软件开发基于KeilMDK5集成开发环境完成,该环境适配ARMCortex-M系列内核单片机的全流程开发,内置完备的C/C++编译器、硬件仿真调试工具,可实现代码编写、编译、烧录与在线调试的一体化操作。开发过程采用STM32标准外设库完成底层硬件驱动封装,以模块化编程方法实现各功能子程序的独立设计与调用,大幅提升了代码的可读性、可移植性与后期维护效率,降低了程序故障的排查难度。图4.1Keil_5软件界面4.2软件程序的设计4.2.1主程序流程图系统主程序采用“初始化-循环扫描-指令执行-状态反馈”的闭环运行逻辑,上电后首先完成系统底层初始化,包括主控芯片时钟配置、GPIO口模式设置、定时器中断配置、USART串口初始化、ADC采集通道配置与外设模块初始化,确保各硬件单元进入就绪状态。初始化完成后,系统进入10ms周期的主循环,依次执行按键状态扫描、传感器数据采集、控制指令解析、电机驱动控制、运行状态更新、OLED显示刷新、WiFi数据收发、安全状态判断与预警处理任务。当检测到有效控制指令或安全异常状态时,系统立即中断非核心任务,优先执行对应控制动作与预警保护操作,保障轮椅运行的安全性。部分源代码如下:#include"main.h"#include"tim.h"#include"usart.h"#include"gpio.h"/*Privateincludes*//*USERCODEBEGINIncludes*/#include"./HAL/key/key.h"#include"./HAL/HC-SR04/hc-sr04.h"#include"./HAL/delay/delay.h"#include"./HAL/OLED/OLED_NEW.H"#include"./HAL/ONEESP8266/ONEESP8266.h"/*USERCODEENDIncludes*//*Privatetypedef*//*USERCODEBEGINPTD*/voidMonitor_function(void); //监测函数voidManage_function(void); //处理函数voidDisplay_function(void); //显示函数voidKey_function(void); //按键函数voidCar_Work_function(void);/*USERCODEENDPTD*//*Privatedefine*//*USERCODEBEGINPD*/图4.2系统流程图4.2.2按键子程序流程按键子程序采用中断扫描+软件消抖机制,确保指令稳定可靠。程序进入后先读取按键IO口电平,判断是否有按键按下,若有则延时10ms消抖,再次确认有效后进入指令解析。系统共设置前进、后退、左转、右转、模式切换五类按键,按下对应按键时,子程序立即标记对应动作标志位,并执行互斥判断,避免多指令冲突。模式切换键用于在手动控制与自动循迹之间切换;方向键采用长按有效、松开停止的逻辑,保证操作安全。子程序将最终指令存入全局变量,供主程序调用执行,完成后清除标志位并返回主循环,全程响应迅速、无卡顿、不误触发。部分源代码如下:voidKey_function(void){ if(Key_Check(KEY_1,KEY_SINGLE)) //按键1短按 { if(Car_Mode==0&&Car_Status==0) { Car_Mode=1; Car_Status=1; } else { Car_Mode=0; Car_Status=0; } } if(Key_Check(KEY_1,KEY_LONG)) //按键1长按 { con_mode=(con_mode==0)?1:0; } if(Key_Check(KEY_2,KEY_SINGLE)) //按键2短按 { Car_Mode=2; } if(Key_Check(KEY_3,KEY_SINGLE)) //按键3短按 { Car_Mode=3; } if(Key_Check(KEY_4,KEY_SINGLE)) //按键4短按 { Car_Mode=4; } } /***********监测函数*****/voidMonitor_function(void){ distance=Hcsr04_GetDistance(&htim2,25); if(time_500ms==1)//500ms定时标志位触发 { time_500ms=0;//重置定时标志位 } if(uart2_rx_flag==1) { uart2_rx_flag=0; if(uart2_buf[0]==0xF4&&uart2_buf[1]==0x06&&uart2_buf[3]==0xFF) { switch(uart2_buf[2]) { case0x02: Car_Mode=1; Car_Status=1; break; case0x03: Car_Mode=2; break; case0x04: Car_Mode=3; break; case0x05: Car_Mode=4; break; case0x06: Car_Mode=0; Car_Status=0; break; default: break; } }} }图4.3按键子程序流程图4.2.3显示子程序流程显示子程序以OLED屏为载体,按固定分区刷新轮椅运行状态。程序启动后先判断当前显示模式,再分区域刷新数据:顶部显示工作模式(手动/自动),左侧显示电池电量与供电方式(太阳能/电池),中间显示障碍物距离,底部显示当前运动状态。程序采用局部刷新策略,只更新变化数据,降低刷新功耗。显示内容包含中文、数字与简单图标,确保强光下也可清晰读取。当系统出现避障报警、欠压提示时,子程序优先显示故障信息并闪烁提醒。刷新完成后等待主循环指令,保证界面实时同步系统状态,为使用者提供直观、稳定、全面的信息反馈。部分源代码如下:voidDisplay_function(void){ switch(flag_display) //根据不同的显示模式标志位,显示不同 { case0: Oled_ShowCHinese(0,0,(uint8_t*)"模式"); Oled_ShowString(32,0,(uint8_t*)":"); if(con_mode==0) { Oled_ShowCHinese(40,0,(uint8_t*)"手动"); } else { Oled_ShowCHinese(40,0,(uint8_t*)"循迹"); } Oled_ShowCHinese(0,3,(uint8_t*)"距离"); Oled_ShowString(32,3,(uint8_t*)":"); OLED_ShowNum(40,3,distance,3); Oled_ShowCHinese(0,6,(uint8_t*)"阈值"); Oled_ShowString(32,6,(uint8_t*)":"); OLED_ShowNum(40,6,distance_yu,3); break; }}图4.4显示函数子程序流程图5系统的测试5.1硬件调试硬件单元模块调试采用分模块独立测试的方式开展,在系统整体焊接前,先对各硬件单元进行单独通电测试,验证模块的硬件功能与电气性能。测试过程中,首先通过万用表完成主控最小系统的电源、晶振、复位电路的通断与电压测试,确保核心电路无短路、虚焊问题,供电电压稳定在3.3V±0.05V范围内;随后依次对电源管理电路、电机驱动电路、传感器模块、人机交互模块、WiFi通信模块进行单独通电测试,通过示波器检测关键节点信号波形,验证模块通信功能、驱动能力、信号输出是否正常,针对信号干扰、驱动能力不足等问题,通过调整滤波电路参数、优化布线完成整改,确保所有硬件单元均可独立正常工作。5.2软硬件联合调试软硬件联合调试在硬件单元测试通过后开展,将编译完成的程序烧录至主控芯片,验证硬件与软件的协同运行效果,完成系统整体功能的联调与优化。调试过程中,首先完成底层驱动程序调试,验证主控与各外设模块的通信是否正常,确保传感器数据可正常采集、外设可响应主控指令;随后逐步加载各功能子程序,依次完成运动控制、人机交互、环境感知、远程通信、安全预警功能的联调,针对指令响应延迟、传感器数据跳变、电机运行卡顿等问题,通过优化程序逻辑、调整滤波算法参数、优化PWM输出频率完成整改;最后完成系统整体运行逻辑联调,验证不同工作模式切换、多控制模式协同运行的稳定性。5.3实物展示5.3.1太阳能供电与电源管理功能测试本次测试在户外自然光环境下开展,验证系统太阳能充电与电源管理性能。将设备置于光照强度80000lux的户外环境,持续监测锂电池充电参数与稳压输出效果。测试结果显示,太阳能板可稳定输出充电电流,充放电保护功能正常触发,两级稳压电路输出电压波动小于±0.1V,供电稳定性符合设计要求。图5.1太阳能供电5.3.2按键控制功能测试本次测试验证按键控制的响应精度与操作有效性,依次按下前进、后退、左转、右转、模式切换按键,监测系统动作响应情况。测试结果显示,所有按键均可被系统精准识别,无漏触发、误触发问题,长按持续执行、松开立即停止的逻辑正常,模式切换响应时间小于100ms,操作体验与控制效果完全符合设计要求。图5.2按键控制功能测试5.3.3语音交互控制功能测试本次测试验证离线语音识别的准确率与控制响应效果,在室内安静环境与户外环境下,分别发出预设的全部语音控制指令,统计识别成功率与动作执行效果。测试结果显示,系统语音指令识别准确率达98%以上,指令响应时间小于500ms,可精准完成对应控制动作,离线运行状态下功能稳定,适配手部失能使用者的操作需求。图5.3语音交互控制功能测试结论本文针对传统电动轮椅续航能力有限、控制模式单一、智能辅助功能不足的核心痛点,设计并实现了一套以STM32F103C8T6单片机为核心的太阳能智能轮椅控制系统。论文首先阐述了课题的研究背景与意义,梳理了国内外智能轮椅领域的研究现状,明确了系统的功能需求与设计方案;随后完成了系统的硬件电路设计,涵盖主控最小系统、太阳能供电与电源管理、电机驱动、环境感知、人机交互、WiFi通信等全模块的电路设计与器件选型;详细介绍了系统的软件设计方案,完成了主程序流程与各核心功能子程序的开发实现;最后通过全面的系统测试,完成了系统功能与性能的验证。测试结果表明,本系统实现了全部预设功能:太阳能供电方案可有效提升轮椅户外续航能力,按键、手机APP、语音交互三种控制模式可适配不同身体状况使用者的操作需求,红外循迹与超声波避障功能为轮椅出行提供了完善的安全保障,OLED屏可实现运行状态的实时直观展示。系统运行稳定可靠,操作便捷,成本可控,相比传统电动轮椅,在使用适配性、续航能力、安全防护能力上均有明显提升,可有效改善老年与肢体残障群体的出行体验,具备较强的实用价值与推广前景。参考文献[1]UngureanI.IntegratingFieldbusandData-CentricMiddleware:AnSTM32ModbusMasterGatewayforDDS-BasedIIoTSystems[J].Technologies,2025,13(11):526-526.[2]刘金琨.先进PID控制MATLAB仿真[M].电子工业出版社:202304:576.[3]李鑫,郑铖,杨星,等.卡尔曼滤波与PID的两轮自平衡小车设计[J].单片机与嵌入式系统应用,2023,23(01):84-87.[4]胡鹏飞.单片机技术的在电子产品中的应用[J].集成电路应用,2022,39(02):274-275.[5]《C程序设计(第五版)》荣获首届全国教材建设奖全国优秀教材(高等教育类)一等奖[J].计算机教育,2022,(01):2.[6]陈忠平,刘琼.51单片机C语言程序设计经典实例[M].电子工业出版社:202106:424.[7]李冠奎,秦云翔.基于STM32的自平衡小车结构和系统设计[J].信息与电脑(理论版),2021,33(09):84-86.[8]李天童,宁平凡,牛萍娟.基于改进遗传算法的工厂AGV安全路径规划[J].组合机床与自动化加工技术,2020,(03):160-163.[9]刘静,肖家宝,王晓,等.两轮自平衡机器人控制系统设计与实现[J].电子技术与软件工程,2019,(17):68-69.[10]孙梦凡,桂文杰.两轮自平衡机器人控制系统设计[J].山东农业工程学院学报,2019,36(08):13-16.[11]王磊,宁欣.基于STM32的两轮自平衡小车控制系统设计[J].山东工业技术,2018,(13):54.[12]吴正朕,仝硕,毋健.两轮自平衡小车控制系统设计[J].中国科技信息,2018,(10):65-66.[13]刘春阳,刘幸,杨曼,等.两轮自平衡小车的系统设计与实现[J].测控技术,2018,37(02):70-74.[14]占华林,邹丽彬,欧阳烨.基于MPU6050六轴传感器平衡小车的设计[J].电子测试,2017,(21):10-11.[15]路成强,曾洁,李千振.基于卡尔曼滤波的两轮自平衡遥控小车设计[J].自动化仪表,2017,38(09):44-47+52.[16]殷文正,姜卫东,陶金.基于禁忌搜索算法的AUV动态路径规划策略[J].南京大学学报(自然科学),2017,53(01):144-150.[17]赵磊.基于STM32的两轮自平衡小车研究[J].数字技术与应用,2017,(01):35-36.[18]刘二林,姜香菊.基于卡尔曼滤波的两轮自平衡车姿态检测[J].自动化与仪器仪表,2015,(02):52-54.季鹏飞,朱燕,程传统,等.基于STM32的两轮自平衡小车控制系统设计[J].电子科技,2014,27(11):96-99+105.[19]杨凌霄,李晓阳.基于卡尔曼滤波的两轮自平衡车姿态检测方法[J].计算机仿真,2014,31(06):406-409.[20]SalemoA,AngelesJ.ANewFamilyofTwo-WheeledMobileRobots:ModelingandControllability[J].IEEETransactionsonRobotics:ApublicationoftheIEEERoboticsandAutomationSociety,2007,23(1):169-173.谢辞本论文的完成,离不开我的指导老师的悉心指导与无私帮助。从课题的选题、方案设计,到硬件开发、软件编程,再到论文的撰写与修改,老师始终以严谨的治学态度、深厚的专业知识,为我提供了全方位的指导与帮助。在课题研究遇到瓶颈时,老师为我梳理研究思路,指出问题核心,帮助我攻克了一个又一个技术难题;在论文撰写过程中,老师逐字逐句审阅修改,提出了大量宝贵的修改意见,让我得以顺利完成论文的撰写。同时,我要感谢学院的各位老师,在大学期间为我传授了扎实的专业知识,为本次课题研究奠定了坚实的理论基础;感谢我的同学与朋友,在硬件调试与软件开发过程中,与我交流探讨技术问题,给予了我诸多帮助与鼓励;感谢我的家人,始终给予我无条件的支持与理解,让我能够安心完成学业与课题研究。最后,向在百忙之中抽出时间评审本论文的各位专家老师,致以最诚挚的谢意。附录A原理图:附录B#include"main.h"#include"tim.h"#include"usart.h"#include"gpio.h"/*Privateincludes*//*USERCODEBEGINIncludes*/#include"./HAL/key/key.h"#include"./HAL/HC-SR04/hc-sr04.h"#include"./HAL/delay/delay.h"#include"./HAL/OLED/OLED_NEW.H"#include"./HAL/ONEESP8266/ONEESP8266.h"/*USERCODEENDIncludes*//*Privatetypedef*//*USERCODEBEGINPTD*/voidMonitor_function(void); //监测函数voidManage_function(void); //处理函数voidDisplay_function(void); //显示函数voidKey_function(void); //按键函数voidCar_Work_function(void);/*USERCODEENDPTD*//*Privatedefine*//*USERCODEBEGINPD*/#defineBEEP(a)(a?HAL_GPIO_WritePin(BEEP_GPIO_Port,BEEP_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(BEEP_GPIO_Port,BEEP_Pin,GPIO_PIN_RESET))#defineIR_LHAL_GPIO_ReadPin(IR_L_GPIO_Port,IR_L_Pin)#defineIR_RHAL_GPIO_ReadPin(IR_R_GPIO_Port,IR_R_Pin)//四个电机#defineMotor_IN1(a)(a?HAL_GPIO_WritePin(Motor_IN1_GPIO_Port,Motor_IN1_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(Motor_IN1_GPIO_Port,Motor_IN1_Pin,GPIO_PIN_RESET))#defineMotor_IN2(a)(a?HAL_GPIO_WritePin(Motor_IN2_GPIO_Port,Motor_IN2_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(Motor_IN2_GPIO_Port,Motor_IN2_Pin,GPIO_PIN_RESET))#defineMotor_IN3(a)(a?HAL_GPIO_WritePin(Motor_IN3_GPIO_Port,Motor_IN3_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(Motor_IN3_GPIO_Port,Motor_IN3_Pin,GPIO_PIN_RESET))#defineMotor_IN4(a)(a?HAL_GPIO_WritePin(Motor_IN4_GPIO_Port,Motor_IN4_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(Motor_IN4_GPIO_Port,Motor_IN4_Pin,GPIO_PIN_RESET))#defineMotor_IN5(a)(a?HAL_GPIO_WritePin(Motor_IN5_GPIO_Port,Motor_IN5_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(Motor_IN5_GPIO_Port,Motor_IN5_Pin,GPIO_PIN_RESET))#defineMotor_IN6(a)(a?HAL_GPIO_WritePin(Motor_IN6_GPIO_Port,Motor_IN6_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(Motor_IN6_GPIO_Port,Motor_IN6_Pin,GPIO_PIN_RESET))#defineMotor_IN7(a)(a?HAL_GPIO_WritePin(Motor_IN7_GPIO_Port,Motor_IN7_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(Motor_IN7_GPIO_Port,Motor_IN7_Pin,GPIO_PIN_RESET))#defineMotor_IN8(a)(a?HAL_GPIO_WritePin(Motor_IN8_GPIO_Port,Motor_IN8_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(Motor_IN8_GPIO_Port,Motor_IN8_Pin,GPIO_PIN_RESET))/*USERCODEENDPD*//*Privatemacro*//*USERCODEBEGINPM*//*USERCODEENDPM*//*Privatevariables*//*USERCODEBEGINPV*/uint16_ttime_1ms,time_500ms;//计时变量1ms,500msuint8_tkey_num,flag_display; //按键与显示变量uint8_tspeed_pwm=40;uint8_tCar_Mode; //小车模式变量uint8_tCar_Status; //小车状态变量uint8_tCar_Time; //小车计时变量uint16_tTurn_Time; //小车转向时间uint8_tIR_flag;uint8_tcon_mode;uint8_talarm_flag;uint16_tdistance,distance_yu=20; //距离变量//串口1的数据获取uint8_tuart2_value;//串口传的单个数据//串口的储存数组,串口的接收时间,串口存值的数量uint8_tuart2_buf[36],uart2_time,uart2_num;uint8_tuart2_rx_flag;//串口的获取值的标志位/*USERCODEENDPV*//*Privatefunctionprototypes*/voidSystemClock_Config(void);/*USERCODEBEGINPFP*//*USERCODEENDPFP*//*Privateusercode*//*USERCODEBEGIN0*//***********按键设置函数*****/voidKey_function(void){ if(Key_Check(KEY_1,KEY_SINGLE)) //按键1短按 { if(Car_Mode==0&&Car_Status==0) { Car_Mode=1; Car_Status=1; } else { Car_Mode=0; Car_Status=0; } } if(Key_Check(KEY_1,KEY_LONG)) //按键1长按 { con_mode=(con_mode==0)?1:0; } if(Key_Check(KEY_2,KEY_SINGLE)) //按键2短按 { Car_Mode=2; } if(Key_Check(KEY_3,KEY_SINGLE)) //按键3短按 { Car_Mode=3; } if(Key_Check(KEY_4,KEY_SINGLE)) //按键4短按 { Car_Mode=4; } } /***********监测函数*****/voidMonitor_function(void){ distance=Hcsr04_GetDistance(&htim2,25); if(time_500ms==1)//500ms定时标志位触发 { time_500ms=0;//重置定时标志位 } if(uart2_rx_flag==1) { uart2_rx_flag=0; if(uart2_buf[0]==0xF4&&uart2_buf[1]==0x06&&uart2_buf[3]==0xFF) { switch(uart2_buf[2]) { case0x02: Car_Mode=1; Car_Status=1; break; case0x03: Car_Mode=2; break; case0x04: Car_Mode=3; break; case0x05: Car_Mode=4; break; case0x06: Car_Mode=0; Car_Status=0; break; default: break; } }} }/***********显示函数*****/voidDisplay_function(void){ switch(flag_display) //根据不同的显示模式标志位,显示不同 { case0: Oled_ShowCHinese(0,0,(uint8_t*)"模式"); Oled_ShowString(32,0,(uint8_t*)":"); if(con_mode==0) { Oled_ShowCHinese(40,0,(uint8_t*)"手动"); } else { Oled_ShowCHinese(40,0,(uint8_t*)"循迹"); } Oled_ShowCHinese(0,3,(uint8_t*)"距离"); Oled_ShowString(32,3,(uint8_t*)":"); OLED_ShowNum(40,3,distance,3); Oled_ShowCHinese(0,6,(uint8_t*)"阈值"); Oled_ShowString(32,6,(uint8_t*)":"); OLED_ShowNum(40,6,distance_yu,3); break; }}/***********处理函数*****/voidManage_function(void){ BEEP(alarm_flag); if(Car_Status==1&&distance<distance_yu) { if(con_mode==1) { Car_Mode=0; //小车停止 } elseif(Car_Mode==1) { Car_Mode=0; } alarm_flag=1; } elseif(Car_Status==0) { alarm_flag=0; } elseif(distance>=distance_yu) { Car_Mode=1; alarm_flag=0; }}/***********小车控制函数*****/voidCar_Work_function(void){ Car_Time++; if(Car_Time>=100)Car_Time=0; if(Car_Mode==0) //小车停止 { Motor_IN1(1); Motor_IN2(1); Motor_IN3(1); Motor_IN4(1); Motor_IN5(1); Motor_IN6(1); Motor_IN7(1); Motor_IN8(1); } elseif(Car_Mode==1) //小车前进 { Motor_IN1(1); M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年内蒙古呼伦贝尔市社区工作者考试卷附答案
- 2026年中国不锈钢流体电磁阀市场调查研究报告
- 2026年中国三相桥市场调查研究报告
- 2026年中国UK工业插头市场调查研究报告
- 2026年中国PET丝印胶盒市场调查研究报告
- 2026年中国FRP耐酸碱风机市场调查研究报告
- 2026年中国ABS电机市场调查研究报告
- 2026年中国15米卷线盘市场调查研究报告
- 2026年计算机网络管理员-计算机网络管理员(初级)历年参考题库含答案解析
- 2026年航空职业技能鉴定考试-西安机场理论考试历年参考题库含答案解析
- 功能材料合成与制备-第1章-超导材料
- JG/T 368-2012钢筋桁架楼承板
- 婴幼儿回应性照护
- 铝单板别墅外墙施工合同
- 河北省特种设备安全风险分级管控与 隐患排查治理指导手册
- 机床数控技术PPT完整全套教学课件
- 人教版九年级化学全册笔记(史上最全)
- GB/T 39673.1-2020住宅和楼宇电子系统(HBES)及楼宇自动化和控制系统(BACS)第1部分:通用要求
- GB/T 15820-1995聚乙烯压力管材与管件连接的耐拉拔试验
- 供应链管理课件三
- 《劳动经济学》教学大纲
评论
0/150
提交评论