1.PWM基本结构:运行控制——时基单元——输出比较单元——GPIO。
2.PWM程序编写步骤:
(1)RCC开启时钟,将要用的TIM外设和GPIO外设的时钟打开;
(2)配置时基单元(包括时钟源选择);
(3)配置输出比较单元(包括CCR值、输出比较模式、极性选择、输出使能等参数);
(4)配置GPIO,将其初始化为复用推挽输出配置;
(5)运行控制,启动计数器。
3.有关的TIM函数
(1)TIM_OCxInit 函数:用于配置输出比较模块,一个函数配置一个单元;
(2)TIM_OCStructInit 函数:用于给输出比较结构体赋默认值;
(3)TIM_ForcedOCxConfig 函数:用于配置强制输出模式;
(4)TIM_OCxPreloadConfig 函数:用于配置CCR寄存器的预装功能(影子寄存器,阈值在更新时生效;
(5)TIM_OCxFastConfig 函数:用于配置快速使能的;
(6)TIM_OCx(N)PolarityConfig 函数:用于单独更改输出极性的,含N说明其存在互补通道,一般结构体都会有函数用于改变极性;
(7)TIM_CCx(N)Cmd 函数:用于单独修改输出使能参数;
(8)TIM_SetComparex 函数:用于单独更改CCR寄存器值,运行时更改占空比。
4.定义TIM_OCStructInit 函数:
(1)TIM_CMode 函数:Timing——冻结,(In)Active——相等时置(无效)有效电平,Toggle——相等时电平翻转,PWMx模式;
(2)TIM_OCPolarity 函数:High——高电平,Low——低电平;
(3)TIM_OutputState 函数:Disable——失能,Enable——使能;
(4)TIM_Pulse 函数:CCR寄存器值(计算可参考“STM32单片机学习记录(11.22)”中关于PWM参数的公式)。
注:重映射可以改变输出引脚!具体引脚表可参考STM32参考手册。
5.封装函数时,PWM_SetCompare1 函数用于设置CCR的值,而非直接影响占空比,又公式可知,CCR与ARR的值共同影响占空比。
6.改变引脚时:若让PA15、PB3、PB4这三个引脚当做GPIO来使用,再用AFIO将JTAG复用解除即可。若要使用重映射定时器或者其他外设的复用引脚,则先打开AFIO时钟,再用AFIO重映射外设复用的引脚。
2.2.1、微小型无人机(30~50cm):主要分为扑翼类与旋翼类,二者都无需耗能即可持续飞行,其在基础空气动力学领域存在很多特殊问题,但是基本原理与方程对所有情况都适用。
2.2.2、小型无人机(0.5~2m):以RQ-11“大乌鸦”与“巴伊拉克塔尔——迷你”为例:
RQ-11“大乌鸦”采用电机推进系统,机上搭载用于侦察的可见光、近红外以及热成像系统,同时可搭载“激光照明器”为地面人员提供指示;
“巴伊拉克塔尔——迷你”为常规布局电动飞行器,拥有扩频技术加密的数据链路,作用距离为20km,通过GPS等无线电导航系统进行导航
2.2.3、中型无人机(固定翼/螺旋桨):常见翼展5~10m,载荷100~200kg,以RQ-2“先锋”与“天眼”为例;
RQ-2“先锋”为地面指挥官提供实时侦察和情报信息,动力系统采用活塞式发动机和转子发动机两种选择,飞行器可使用气压弹射器或火箭助推起飞;
“天眼”由轻质复合材料制造,方便地面装配与拆解,装配52hp转子发动机,具有高可靠性和低振动特征。还配有一套翼伞或降落伞作为应急回收方式。
2.2.4、大型无人机:可远距离飞行,并在一定区域盘旋待机,进行长时间续航监视,且能够携带武器,以RQ-4“全球鹰”为例,其最大起飞重量约1500kg,续航32h,可使用雷达,光电设备以及红外传感器执行监视任务,具有齐全的载荷能力,可通过卫星数据链进行控制。
2.4.1、按照航程与航时分类——由联合无人机计划办公室(JPO)制定
1.低成本超近程无人机:任务半径5km;
2.超近程无人机:任务半径50km,航时1~6h;
3.近程无人机:任务半径300km,航时8~12h;
4.中程无人机:任务半径650km,实际要求达到亚音速(可用于收集气象数据资料);
5.长航时无人机:任务半径300km,航时36h,最高飞行高度9km(可用于中继通信);
以上无人机主要用于侦察、监视功能。
2.4.2、基于尺寸的小型无人机非正式分类:微型、小型。
2.4.3、梯级分类系统:分为美空军梯级、海军陆战队梯级、陆军梯级。