CN104300943A - 一种机载pwm信号转换装置与方法 - Google Patents
一种机载pwm信号转换装置与方法 Download PDFInfo
- Publication number
- CN104300943A CN104300943A CN201410413652.8A CN201410413652A CN104300943A CN 104300943 A CN104300943 A CN 104300943A CN 201410413652 A CN201410413652 A CN 201410413652A CN 104300943 A CN104300943 A CN 104300943A
- Authority
- CN
- China
- Prior art keywords
- pwm
- dpram
- unit
- state
- self
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Selective Calling Equipment (AREA)
Abstract
本发明提供了一种机载PWM信号转换装置与方法,利用粗计数和精计数结合的方法提高采样和生成PWM信号的精度;利用具有双邮箱的DPRAM进行数据通信,提高飞控单元与PWM端的数据交换的快速性、稳定性和可靠性。该装置在FPGA中实现,可适用于不同型号的遥控器和不同类型的无人机,以及实现多任务扩展。
Description
技术领域
本发明涉及无人机及其飞控技术领域,具体来说是一种用于无人机自动驾驶仪的机载PWM信号转换装置与方法。
背景技术
无人机在军事上的用途,从过去的情报、监视和侦察装备变成为携带导弹直接对地面目标进行攻击的武器。在交通监控、航拍测绘、灾情侦查、大气监测等民用和科学研究领域也发挥着重要的作用。无论从国防建设,还是社会发展方面考虑,生产、研发、装备无人机已成为国际上的重要发展趋势。就无人机研制方面,美国和以色列走在世界的前列。其中在美军和以军服役的“全球鹰”和“苍鹭”代表着全球最先进的无人机。无人机的先进性一定程度取决于飞控系统的设计。目前,国外成熟的无人机飞控,包括罗斯的STA3X、瑞士ETH研究机构的wePilot2000、加拿大MicroPilot公司的MP2128、美国Cloudcap公司的Piccolo II等。国内商品飞控有零度智控的YS09、普洛特的UP30、北京航空航天大学的iFly40、成都纵横的AP-300等。总体上,国内无人机飞控与国外成熟飞控相比,还存在一定差距。因此,无人机飞控的研究具有重要的意义。
舵机是无人机飞行的执行机构,控制信号是周期固定脉宽可变的PWM信号。舵机用PWM信号,可由遥控接收机输出,也可通过飞控单元产生,具有遥控/自驾功能的无人机飞控,需要机载PWM信号转换装置,完成以下任务(1)采样遥控接收机输出PWM信号的周期和脉宽,获取不同型号遥控器的PWM周期,作为产生自驾PWM的周期,以及获取各舵机中立位置的脉宽,作为飞控算法的参考变量;(2)将飞控算法输出的各舵机控制量,生成自驾PWM控制舵机;(3)实现遥控/自驾切换。目前,大多数飞控系统使用STM32等单片机实现机载PWM信号转换装置,存在各功能任务串行完成、实时性差、PWM采样和生成PWM精度低、灵活性差、不易扩展等缺点。FPGA具有并行化处理、实时性强、易于灵活扩展等优势,因此,它能在无人机飞控中发挥重要作用。目前,也有少量无人机飞控运用到FPGA,但它们局限于用作简单的片选逻辑和接口处理,没能深入研究,如何提高机载PWM信号转换装置的遥控PWM采样和生成自驾PWM的精度,提高数据接口稳定性、快速性和可靠性。
综上所述,现有机载PWM信号转换装置存在任务串行完成、实时性差、PWM采样和生成PWM精度低、灵活性差、不易扩展等缺点,以及数据接口稳定性、快速性和可靠性低等问题。
发明内容
针对以上问题,本发明的目的在于提供一种机载PWM信号转换装置与方法,实现对遥控PWM的并行化高精度采样和生成高精度的自驾PWM;利用具有双邮箱的DPRAM作为数据传输接口,提高数据传输的稳定性、快速性和可靠性。
本发明的发明内容如下:
一种机载PWM信号转换装置,包括晶振、总线驱动1、FPGA芯片、总线驱动2、和微处理器,FPGA芯片作为信号转换装置核心元件,分别与晶振、总线驱动1、总线驱动2、微处理器连接,所述FPGA芯片上包括PLL倍频单元、时钟分频单元、PWM脉宽采样单元5、遥控/自驾信号切换使能单元、遥控/自驾信号切换单元、PWM周期采样单元、PWM脉宽采样单元1、PWM脉宽采样单元2、PWM脉宽采样单元3、PWM脉宽采样单元4、PWM脉宽采样单元6、PWM信号产生单元1、PWM信号产生单元2、PWM信号产生单元3、PWM信号产生单元4、PWM信号产生单元6、DPRAM PWM端逻辑控制单元、DPRAM、DPRAM邮箱逻辑单元、单稳态触发器1、单稳态触发器2、单稳态触发器3、单稳态触发器4、DPRAM飞控端逻辑控制单元、SPI接口逻辑单元;
所述PLL倍频单元,将晶振输出时钟,进行倍频,用作全局时钟,为整个FPGA提供时钟源;所述时钟分频单元,输出分频时钟,为用到计数器的逻辑单元提供计数时钟;
所述PWM周期采样单元,用于采样遥控接收机输出经总线驱动1的遥控PWM信号周期,输出粗精度和细精度的两种周期值;所述PWM脉宽采样单元1、PWM脉宽采样单元2、PWM脉宽采样单元3、PWM脉宽采样单元4、PWM脉宽采样单元5和PWM脉宽采样单元6,用于采样遥控接收机输出经总线驱动1的六路PWM信号脉宽,每个单元输出粗精度和细精度的两种脉宽值;PWM脉宽采样单元5,采样第5通道PWM信号的脉宽,通过遥控/自驾切换使能单元,输出切换使能,经遥控/自驾信号切换单元选择遥控接收机输出经总线驱动的遥控PWM信号或经PWM信号产生单元x产生的自驾PWM信号作为舵机控制信号,其中,x=1,2,3,4,6,经总线驱动2控制副翼舵机、升降舵机、油门舵机、方向舵机和任务舵机;
所述PWM信号产生单元1、PWM信号产生单元2、PWM信号产生单元3、PWM信号产生单元4和PWM信号产生单元6,用于产生控制舵机的自驾PWM信号,输出到遥控/自驾信号切换单元;
所述DPRAM PWM端逻辑控制单元,连接DPRAM的PWM端,将采集到的遥控PWM周期值和脉宽值存储到DPRAM中,以及将DPRAM中存有的PWM信号产生单元所需的自驾PWM周期值和脉宽值输出到PWM信号产生单元x,其中,x=1,2,3,4,6;
所述DPRAM,分为三个逻辑区域,逻辑区域I用于存储邮箱通信内容,逻辑区域II用于存储采样到的遥控PWM周期值和脉宽值;逻辑区域III用于存储产生自驾PWM所需的周期值和脉宽值;DPRAM邮箱逻辑单元,用于产生邮箱中断信号经单稳态触发器1、单稳态触发器2、单稳态触发器3和单稳态触发器4,输出给DPRAM PWM端逻辑控制单元和微处理器;
所述DPRAM飞控端逻辑控制单元,控制读取DPRAM中存有的遥控PWM周期值和脉宽值到微处理器的飞控单元,以及控制将飞控单元经算法运算后得到的PWM信号产生单元所用的自驾PWM周期值和脉宽值存储到DPRAM中;
所述SPI接口逻辑单元,用作SPI总线信号处理,将SPI串行数据和DPRAM飞控逻辑控制单元的并行数据进行相互转换。
一种使用所述的机载PWM信号转换装置的方法,所述的微处理器从DPRAM中读取采样到的遥控PWM周期和脉宽,以及向DPRAM中更新产生自驾PWM所用的周期和脉宽,包括上电自检和主中断两部分,具体步骤为:
上电自检查部分:
步骤201:开始;
步骤202:判断采样到的遥控PWM周期是否更新,即INT_F1中断是否产生,如果产生,即INT_F1==1,则跳到步骤203,否则继续回到步骤202;
步骤203:从DPRAM逻辑区域II读取采样到的遥控PWM周期;
步骤204:判断周期是否在18~23ms之间,如果是,进入步骤205,否则回到步骤202;
步骤205:该周期作为产生自驾PWM所用的周期,写到DPRAM逻辑区域III;
步骤206:写邮箱地址1,产生中断INT_P1,通知DPRAM PWM端读取产生自驾PWM所用的周期;
步骤207:读邮箱地址1,清中断INT_F1,完成周期更新,进入主中断部分;
主中断部分:
步骤208:判断采样到的遥控PWM脉宽是否更新,即INT_F2中断是否产生,如果产生,即INT_F2==1,则跳到步骤209,否则继续回到步骤208;
步骤209:从DPRAM逻辑区域II读取采样到的遥控PWM脉宽;
步骤210:向DPRAM逻辑区域III更新产生自驾PWM所用的脉宽;
步骤211:写邮箱地址2,产生中断INT_P2,通知DPRAM PWM端读取产生自驾PWM所用的脉宽;
步骤212:读邮箱地址2,清中断INT_F2完成脉宽更新,跳到步骤208,进入下一中断周期。
一种使用所述的机载PWM信号转换装置的方法,所述的DPRAM PWM端逻辑控制单元向DPRAM中更新采样到的遥控PWM周期和脉宽,以及读取DPRAM中产生自驾PWM所用的周期和脉宽;具体状态跃迁关系为:
状态301:空闲状态,在PWM1上升沿,跃迁到状态302;
状态302:写遥控PWM周期状态,向DPRAM逻辑区域II更新采样到的遥控PWM周期;自然跃迁到状态303;
状态303:产生中断INT_F1,通知微处理器,已经更新遥控PWM周期,可以读取;自然跃迁到状态304;
状态304:等待读取产生自驾PWM所用数据状态;如果PWM1上升沿到来且周期更新成功标志为0,跃迁到状态302;如果INT_P1高电平,跃迁到状态305;如果INT_P2高电平,跃迁到状态308;
状态305:读取产生自驾PWM所用的周期状态,从DPRAM逻辑区域III读取产生自驾PWM所用的周期到PWM信号产生单元x,其中,x=1,2,3,4,6;自然跃迁到状态306;
状态306:周期更新成功标志置1状态,表明周期已成功更新;自然跃迁到状态307;
状态307:清中断INT_P1状态,准备接收下次中断;自然跃迁到状态304;
状态308:读取产生自驾PWM所用的脉宽状态,从DPRAM逻辑区域III读取产生自驾PWM所用的周期到PWM信号产生单元x,其中,x=1,2,3,4,6;自然跃迁到状态309;
状态309:写遥控PWM脉宽状态,将采样到的遥控PWM脉宽数据写入到DPRAM逻辑区域II;自然跃迁到状态310;
状态310:产生中断INT_F2状态,通知微处理器,已经更新遥控PWM脉宽,可以读取;自然跃迁到状态311;
状态311:清中断INT_P2状态,准备接收下次中断;自然跃迁到状态304;
一种使用所述的机载PWM信号转换装置的方法,其特征在于,所述的微处理器通过SPI接口逻辑单元向DPRAM飞控端逻辑控制单元发送的16位数据种类,包含命令和有效数据其中,有效数据是产生自驾PWM所用的周期和脉宽,命令包括命令标识域、片选域、读写使能域、基地址域和数据长度域;
所述命令标识域,bit15和bit14,若是11,表明是命令;
所述片选域,bit13,若是1,则DPRAM飞控端片选有效;
所述读写使能域,bit12,若是1,代表微处理器向DPRAM写数据,若是0,代表微处理器读取DPRAM数据;
所述基地址域,bit11~bit6,代表读数据或写数据的起始地址;
所述数据长度域,bit5~bit0,代表读数据或写数据的数据长度。
本发明的有益技术效果在于:
(1)将周期采样和脉宽采样分模块实现,易于在上电自检时,获得不同型号遥控器PWM的周期,并以此作为自驾PWM的周期,从而提高机载PWM信号转换装置的通用性。
(2)PWM周期采样单元和PWM脉宽采样单元,均对PWM信号进行粗计数和精计数,提高遥控PWM信号采样精度,通过PLL倍频单元将精计数的计数时钟提高到100MHz,从而使得测量精度达到10ns。同样,PWM信号产生单元也使用粗计数和精计数结合的方法,使产生的自驾PWM精度也达到10ns。
(3)利用DPRAM作为数据传输接口,不需要像FIFO频繁的判断标志位,从而提高数据传输速率;将DPRAM进行逻辑分区,不同分区读写数据方向不同,避免DPRAM两端产生读写冲突,从而提高数据传输的稳定性和可靠性;双邮箱的通信机制,使得DPRAM两端可以在硬件中断情况下完成数据交换,而不需再判断邮箱内容,从而提高了数据传输的速度。
(4)遥控/自驾切换在FPGA中完成,不需要向飞控单元发送切换命令,从而使得在无人机飞行过程中,遇到紧急情况,可迅速切回遥控状态,提高飞行安全性。
(5)机载PWM信号转换装置使用SPI总线与飞控单元通信,可将数据通信速率提高到40MHz,也节省CPU的IO引脚。
(6)利用FPGA,分模块实现各功能,可根据不同的系统需求,灵活的扩展和裁剪功能模块,以此适应固定翼、多旋翼和自旋翼等无人机需求,以及拍照、伞降、投放等任务需求。
附图说明
图1是本发明的机载PWM信号转换装置功能结构图;
图2是本发明的微处理器控制流程图;
图3是本发明的DPRAM PWM端逻辑控制单元状态跃迁图;
图4是本发明的微处理器命令格式;
具体实施方式
下面结合附图对本发明的具体实施作进一步的说明。
如图1所示,一种机载PWM信号转换装置,包括晶振1、总线驱动1(3)、FPGA芯片4、总线驱动2(5)和微处理器6,FPGA芯片4作为信号转换装置核心元件,分别与晶振1、总线驱动1(3)、总线驱动2(5)、微处理器6连接,所述FPGA芯片4上包括PLL倍频单元401、时钟分频单元402、PWM脉宽采样单元5(403)、遥控/自驾信号切换使能单元404、遥控/自驾信号切换单元405、PWM周期采样单元406、PWM脉宽采样单元1(407)、PWM脉宽采样单元2(408)、PWM脉宽采样单元3(409)、PWM脉宽采样单元4(410)、PWM脉宽采样单元6(411)、PWM信号产生单元1(412)、PWM信号产生单元2(413)、PWM信号产生单元3(414)、PWM信号产生单元4(415)、PWM信号产生单元6(416)、DPRAM PWM端逻辑控制单元417、DPRAM418、DPRAM邮箱逻辑单元419、单稳态触发器1(420)、单稳态触发器2(421)、单稳态触发器3(422)、单稳态触发器4(423)、DPRAM飞控端逻辑控制单元424、SPI接口逻辑单元425;
所述PLL倍频单元401,将晶振1输出时钟,进行倍频,用作全局时钟,为整个FPGA提供时钟源;所述时钟分频单元402,输出分频时钟,为用到计数器的逻辑单元提供计数时钟;
所述PWM周期采样单元406,用于采样遥控接收机2输出经总线驱动1(3)的遥控PWM信号周期,输出粗精度和细精度的两种周期值;所述PWM脉宽采样单元1(407)、PWM脉宽采样单元2(408)、PWM脉宽采样单元3(409)、PWM脉宽采样单元4(410)、PWM脉宽采样单元5(403)和PWM脉宽采样单元6(411),用于采样遥控接收机2输出经总线驱动1(3)的六路PWM信号脉宽,每个单元输出粗精度和细精度的两种脉宽值;PWM脉宽采样单元5(403),采样第5通道PWM信号的脉宽,通过遥控/自驾切换使能单元404,输出切换使能,经遥控/自驾信号切换单元405选择遥控接收机2输出经总线驱动的遥控PWM信号或经PWM信号产生单元x产生的自驾PWM信号作为舵机控制信号,其中,x=1,2,3,4,6,经总线驱动2(5)控制副翼舵机、升降舵机、油门舵机、方向舵机和任务舵机;
所述PWM信号产生单元1(412)、PWM信号产生单元2(413)、PWM信号产生单元3(414)、PWM信号产生单元4(415)和PWM信号产生单元6(416),用于产生控制舵机的自驾PWM信号,输出到遥控/自驾信号切换单元405;
所述DPRAM PWM端逻辑控制单元417,连接DPRAM418的PWM端,将采集到的遥控PWM周期值和脉宽值存储到DPRAM418中,以及将DPRAM418中存有的PWM信号产生单元所需的自驾PWM周期值和脉宽值输出到PWM信号产生单元x,其中,x=1,2,3,4,6;
所述DPRAM418,分为三个逻辑区域,逻辑区域I用于存储邮箱通信内容,逻辑区域II用于存储采样到的遥控PWM周期值和脉宽值;逻辑区域III用于存储产生自驾PWM所需的周期值和脉宽值;DPRAM邮箱逻辑单元419,用于产生邮箱中断信号经单稳态触发器1(420)、单稳态触发器2(421)、单稳态触发器3(422)和单稳态触发器4(423),输出给DPRAM PWM端逻辑控制单元和微处理器6;
所述DPRAM飞控端逻辑控制单元424,控制读取DPRAM418中存有的遥控PWM周期值和脉宽值到微处理器6的飞控单元,以及控制将飞控单元经算法运算后得到的PWM信号产生单元所用的自驾PWM周期值和脉宽值存储到DPRAM418中;
所述SPI接口逻辑单元425,用作SPI总线信号处理,将SPI串行数据和DPRAM飞控逻辑控制单元的并行数据进行相互转换。
如图2所示,一种使用所述的机载PWM信号转换装置的方法,所述的微处理器6从DPRAM418中读取采样到的遥控PWM周期和脉宽,以及向DPRAM418中更新产生自驾PWM所用的周期和脉宽,包括上电自检和主中断两部分,具体步骤为:
上电自检部分:
步骤201:开始;
步骤202:判断采样到的遥控PWM周期是否更新,即INT_F1中断是否产生,如果产生,即INT_F1==1,则跳到步骤203,否则继续回到步骤202;
步骤203:从DPRAM逻辑区域II读取采样到的遥控PWM周期;
步骤204:判断周期是否在18~23ms之间,如果是,进入步骤205,否则回到步骤202;
步骤205:该周期作为产生自驾PWM所用的周期,写到DPRAM逻辑区域III;
步骤206:写邮箱地址1,产生中断INT_P1,通知DPRAM PWM端读取产生自驾PWM所用的周期;
步骤207:读邮箱地址1,清中断INT_F1,完成周期更新,进入主中断部分;
主中断部分:
步骤208:判断采样到的遥控PWM脉宽是否更新,即INT_F2中断是否产生,如果产生,即INT_F2==1,则跳到步骤209,否则继续回到步骤208;
步骤209:从DPRAM逻辑区域II读取采样到的遥控PWM脉宽;
步骤210:向DPRAM逻辑区域III更新产生自驾PWM所用的脉宽;
步骤211:写邮箱地址2,产生中断INT_P2,通知DPRAM PWM端读取产生自驾PWM所用的脉宽;
步骤212:读邮箱地址2,清中断INT_F2完成脉宽更新,跳到步骤208,进入下一中断周期。
如图3所示,一种使用所述的机载PWM信号转换装置的方法,所述的DPRAM PWM端逻辑控制单元417向DPRAM418中更新采样到的遥控PWM周期和脉宽,以及读取DPRAM418中产生自驾PWM所用的周期和脉宽;具体状态跃迁关系为:
状态301:空闲状态,在PWM1上升沿,跃迁到状态302;
状态302:写遥控PWM周期状态,向DPRAM逻辑区域II更新采样到的遥控PWM周期;自然跃迁到状态303;
状态303:产生中断INT_F1,通知微处理器6,已经更新遥控PWM周期,可以读取;自然跃迁到状态304;
状态304:等待读取产生自驾PWM所用数据状态;如果PWM1上升沿到来且周期更新成功标志为0,跃迁到状态302;如果INT_P1高电平,跃迁到状态305;如果INT_P2高电平,跃迁到状态308;
状态305:读取产生自驾PWM所用的周期状态,从DPRAM418逻辑区域III读取产生自驾PWM所用的周期到PWM信号产生单元x,其中,x=1,2,3,4,6;自然跃迁到状态306;
状态306:周期更新成功标志置1状态,表明周期已成功更新;自然跃迁到状态307;
状态307:清中断INT_P1状态,准备接收下次中断;自然跃迁到状态304;
状态308:读取产生自驾PWM所用的脉宽状态,从DPRAM418逻辑区域III读取产生自驾PWM所用的周期到PWM信号产生单元x,其中,x=1,2,3,4,6;自然跃迁到状态309;
状态309:写遥控PWM脉宽状态,将采样到的遥控PWM脉宽数据写入到DPRAM逻辑区域II;自然跃迁到状态310;
状态310:产生中断INT_F2状态,通知微处理器6,已经更新遥控PWM脉宽,可以读取;自然跃迁到状态311;
状态311:清中断INT_P2状态,准备接收下次中断;自然跃迁到状态304;
如图4所示,一种使用所述的机载PWM信号转换装置的方法,其特征在于,所述的微处理器6通过SPI接口逻辑单元425向DPRAM飞控端逻辑控制单元424发送的16位数据种类,包含命令和有效数据,其中,有效数据是产生自驾PWM所用的周期和脉宽,命令包括命令标识域、片选域、读写使能域、基地址域和数据长度域;
所述命令标识域,bit15和bit14,若是11,表明是命令;
所述片选域,bit13,若是1,则DPRAM418飞控端片选有效;
所述读写使能域,bit12,若是1,代表微处理器6向DPRAM418写数据,若是0,代表微处理器6读取DPRAM418数据;
所述基地址域,bit11~bit6,代表读数据或写数据的起始地址;
所述数据长度域,bit5~bit0,代表读数据或写数据的数据长度。
最后说明的是本发明的一种机载PWM信号转换装置与方法不局限于上述实施例,还可以做出各种修改、变换和变形。因此,说明书和附图应被认为是说明性的而非限制性的。凡是依据本发明的技术方案进行修改、修饰或等同变化,而不脱离本发明技术方案的思想和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (4)
1.一种机载PWM信号转换装置,包括晶振(1)、总线驱动1(3)、FPGA芯片(4)、总线驱动2(5)和微处理器(6),FPGA芯片(4)作为信号转换装置核心元件,分别与晶振(1)、总线驱动1(3)、总线驱动2(5)、微处理器(6)连接,其特征在于,所述FPGA芯片(4)内包括PLL倍频单元(401)、时钟分频单元(402)、PWM脉宽采样单元5(403)、遥控/自驾信号切换使能单元(404)、遥控/自驾信号切换单元(405)、PWM周期采样单元(406)、PWM脉宽采样单元1(407)、PWM脉宽采样单元2(408)、PWM脉宽采样单元3(409)、PWM脉宽采样单元4(410)、PWM脉宽采样单元6(411)、PWM信号产生单元1(412)、PWM信号产生单元2(413)、PWM信号产生单元3(414)、PWM信号产生单元4(415)、PWM信号产生单元6(416)、DPRAM PWM端逻辑控制单元(417)、DPRAM(418)、DPRAM邮箱逻辑单元(419)、单稳态触发器1(420)、单稳态触发器2(421)、单稳态触发器3(422)、单稳态触发器4(423)、DPRAM飞控端逻辑控制单元(424)、SPI接口逻辑单元(425);
所述PLL倍频单元(401),将晶振(1)输出时钟,进行倍频,用作全局时钟,为整个FPGA提供时钟源;所述时钟分频单元(402),输出分频时钟,为用到计数器的逻辑单元提供计数时钟;
所述PWM周期采样单元(406),用于采样遥控接收机(2)输出经总线驱动1(3)的遥控PWM信号周期,输出粗精度和细精度的两种周期值;所述PWM脉宽采样单元1(407)、PWM脉宽采样单元2(408)、PWM脉宽采样单元3(409)、PWM脉宽采样单元4(410)、PWM脉宽采样单元5(403)和PWM脉宽采样单元6(411),用于采样遥控接收机(2)输出经总线驱动1(3)的六路PWM信号脉宽,每个单元输出粗精度和细精度的两种脉宽值;PWM脉宽采样单元5(403),采样第5通道PWM信号的脉宽,通过遥控/自驾切换使能单元(404),输出切换使能,经遥控/自驾信号切换单元(405)选择遥控接收机(2)输出经总线驱动的遥控PWM信号或经PWM信号产生单元x产生的自驾PWM信号作为舵机控制信号,其中,x=1,2,3,4,6,经总线驱动2(5)控制副翼舵机、升降舵机、油门舵机、方向舵机和任务舵机;
所述PWM信号产生单元1(412)、PWM信号产生单元2(413)、PWM信号产生单元3(414)、PWM信号产生单元4(415)和PWM信号产生单元6(416),用于产生控制舵机的自驾PWM信号,输出到遥控/自驾信号切换单元(405);
所述DPRAM PWM端逻辑控制单元(417),连接DPRAM(418)的PWM端,将采集到的遥控PWM周期值和脉宽值存储到DPRAM(418)中,以及将DPRAM(418)中存有的PWM信号产生单元所需的自驾PWM周期值和脉宽值输出到PWM信号产生单元x,其中,x=1,2,3,4,6;
所述DPRAM(418),分为三个逻辑区域,逻辑区域I用于存储邮箱通信内容,逻辑区域II用于存储采样到的遥控PWM周期值和脉宽值;逻辑区域III用于存储产生自驾PWM所需的周期值和脉宽值;DPRAM邮箱逻辑单元(419),用于产生邮箱中断信号,经单稳态触发器1(420)、单稳态触发器2(421)、单稳态触发器3(422)和单稳态触发器4(423),输出给DPRAM PWM端逻辑控制单元和微处理器(6);
所述DPRAM飞控端逻辑控制单元(424),控制读取DPRAM(418)中存有的遥控PWM周期值和脉宽值到微处理器(6)的飞控单元,以及控制将飞控单元经算法运算后得到的PWM信号产生单元所用的自驾PWM周期值和脉宽值存储到DPRAM(418)中;
所述SPI接口逻辑单元(425),用作SPI总线信号处理,将SPI串行数据和DPRAM飞控逻辑控制单元的并行数据进行相互转换。
2.一种使用权利要求1所述的机载PWM信号转换装置的方法,其特征在于,所述的微处理器(6)从DPRAM(418)中读取采样到的遥控PWM周期和脉宽,以及向DPRAM(418)中更新产生自驾PWM所用的周期和脉宽,包括上电自检和主中断两部分,具体步骤为:
上电自检部分:
步骤201:开始;
步骤202:判断采样到的遥控PWM周期是否更新,即INT_F1中断是否产生,如果产生,即INT_F1==1,则跳到步骤203,否则继续回到步骤202;
步骤203:从DPRAM逻辑区域II读取采样到的遥控PWM周期;
步骤204:判断周期是否在18~23ms之间,如果是,进入步骤205,否则回到步骤202;
步骤205:该周期作为产生自驾PWM所用的周期,写到DPRAM逻辑区域III;
步骤206:写邮箱地址1,产生中断INT_P1,通知DPRAM PWM端读取产生自驾PWM所用的周期;
步骤207:读邮箱地址1,清中断INT_F1,完成周期更新,进入主中断部分;
主中断部分:
步骤208:判断采样到的遥控PWM脉宽是否更新,即INT_F2中断是否产生,如果产生,即INT_F2==1,则跳到步骤209,否则继续回到步骤208;
步骤209:从DPRAM逻辑区域II读取采样到的遥控PWM脉宽;
步骤210:向DPRAM逻辑区域III更新产生自驾PWM所用的脉宽;
步骤211:写邮箱地址2,产生中断INT_P2,通知DPRAM PWM端读取产生自驾PWM所用的脉宽;
步骤212:读邮箱地址2,清中断INT_F2完成脉宽更新,跳到步骤208,进入下一中断周期。
3.一种使用权利要求1所述的机载PWM信号转换装置的方法,其特征在于,所述的DPRAM PWM端逻辑控制单元(417)向DPRAM(418)中更新采样到的遥控PWM周期和脉宽,以及读取DPRAM(418)中产生自驾PWM所用的周期和脉宽;具体状态跃迁关系为:
状态301:空闲状态,在PWM1上升沿,跃迁到状态302;
状态302:写遥控PWM周期状态,向DPRAM逻辑区域II更新采样到的遥控PWM周期;自然跃迁到状态303;
状态303:产生中断INT_F1,通知微处理器(6),已经更新遥控PWM周期,可以读取;自然跃迁到状态304;
状态304:等待读取产生自驾PWM所用数据状态;如果PWM1上升沿到来且周期更新成功标志为0,跃迁到状态302;如果INT_P1高电平,跃迁到状态305;如果INT_P2高电 平,跃迁到状态308;
状态305:读取产生自驾PWM所用的周期状态,从DPRAM(418)逻辑区域III读取产生自驾PWM所用的周期到PWM信号产生单元x,其中,x=1,2,3,4,6;自然跃迁到状态306;
状态306:周期更新成功标志置1状态,表明周期已成功更新;自然跃迁到状态307;
状态307:清中断INT_P1状态,准备接收下次中断;自然跃迁到状态304;
状态308:读取产生自驾PWM所用的脉宽状态,从DPRAM(418)逻辑区域III读取产生自驾PWM所用的周期到PWM信号产生单元x,其中,x=1,2,3,4,6;自然跃迁到状态309;
状态309:写遥控PWM脉宽状态,将采样到的遥控PWM脉宽数据写入到DPRAM逻辑区域II;自然跃迁到状态310;
状态310:产生中断INT_F2状态,通知微处理器(6),已经更新遥控PWM脉宽,可以读取;自然跃迁到状态311;
状态311:清中断INT_P2状态,准备接收下次中断;自然跃迁到状态304。
4.一种使用权利要求1所述的机载PWM信号转换装置的方法,其特征在于,所述的微处理器(6)通过SPI接口逻辑单元(425)向DPRAM飞控端逻辑控制单元(424)发送的16位数据种类,包含命令和有效数据,其中,有效数据是产生自驾PWM所用的周期和脉宽,命令包括命令标识域、片选域、读写使能域、基地址域和数据长度域;
所述命令标识域,bit15和bit14,若是11,表明是命令;
所述片选域,bit13,若是1,则DPRAM(418)飞控端片选有效;
所述读写使能域,bit12,若是1,代表微处理器(6)向DPRAM(418)写数据,若是0,代表微处理器(6)读取DPRAM(418)数据;
所述基地址域,bit11~bit6,代表读数据或写数据的起始地址;
所述数据长度域,bit5~bit0,代表读数据或写数据的数据长度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410413652.8A CN104300943A (zh) | 2014-08-21 | 2014-08-21 | 一种机载pwm信号转换装置与方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410413652.8A CN104300943A (zh) | 2014-08-21 | 2014-08-21 | 一种机载pwm信号转换装置与方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104300943A true CN104300943A (zh) | 2015-01-21 |
Family
ID=52320547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410413652.8A Pending CN104300943A (zh) | 2014-08-21 | 2014-08-21 | 一种机载pwm信号转换装置与方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104300943A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104698934A (zh) * | 2015-02-27 | 2015-06-10 | 福建工程学院 | 基于fpga的无人机舵机遥控信息的采集和处理方法 |
CN106774364A (zh) * | 2016-12-14 | 2017-05-31 | 歌尔科技有限公司 | 无人机运行控制方法和无人机 |
CN107256033A (zh) * | 2017-07-10 | 2017-10-17 | 重庆大学 | 一种无人机遥控信号转换装置 |
-
2014
- 2014-08-21 CN CN201410413652.8A patent/CN104300943A/zh active Pending
Non-Patent Citations (2)
Title |
---|
冯震,李怀兵,丑武胜: "旋翼小型无人机地面站系统的设计与实现", 《计算机工程》 * |
王尔申,陈士英,石剑民: "基于FPGA的机载PWM信号转换器仿真与视线", 《计算机工程与设计》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104698934A (zh) * | 2015-02-27 | 2015-06-10 | 福建工程学院 | 基于fpga的无人机舵机遥控信息的采集和处理方法 |
CN106774364A (zh) * | 2016-12-14 | 2017-05-31 | 歌尔科技有限公司 | 无人机运行控制方法和无人机 |
CN106774364B (zh) * | 2016-12-14 | 2023-09-15 | 歌尔科技有限公司 | 无人机运行控制方法和无人机 |
CN107256033A (zh) * | 2017-07-10 | 2017-10-17 | 重庆大学 | 一种无人机遥控信号转换装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101382968B (zh) | 一种先进综合式航空电子仿真系统及其仿真方法 | |
CN203551961U (zh) | 一种无人机航电半实物仿真系统 | |
CN103116175B (zh) | 基于dsp和fpga的嵌入式导航信息处理器 | |
CN205034337U (zh) | 分布式矢量推进机构 | |
CN202758243U (zh) | 一种无人机飞行操控系统 | |
CN102854887A (zh) | 一种无人机航迹规划和远程同步操控方法 | |
CN104300943A (zh) | 一种机载pwm信号转换装置与方法 | |
BR102017015954B1 (pt) | Método para operar uma aeronave, e, aeronave | |
CN104950695A (zh) | 一种通用的无人机视觉仿真平台 | |
CN103762964A (zh) | 一种多通道高精度pwm信号采样和生成装置 | |
RU2013118346A (ru) | Дистанционный концентратор данных | |
CN105468019A (zh) | 一种多任务独立并行的无人机飞行控制方法 | |
CN205050404U (zh) | 一种基于航空模型的飞行模拟训练系统 | |
GB2510220A (en) | Flight envelope display | |
CN105066794B (zh) | 一种机载小型导弹导航、制导与控制一体化系统 | |
CN109634184A (zh) | 一种负荷分担式双核飞行控制计算机 | |
CN206348668U (zh) | 一种小型无人机飞行控制系统 | |
CN102045255B (zh) | 民用小型飞机航空电子系统数据流控制方法 | |
CN107192306B (zh) | 一种集成小型化电动舵机控制系统 | |
CN110245107A (zh) | 用于提供用于加速器的结构的系统、装置和方法 | |
CN105955286B (zh) | 一种双核多旋翼飞行控制器 | |
CN105468016A (zh) | 一种无人机飞行控制系统及其方法 | |
CN204347615U (zh) | 一种基于Edison的无人机自动驾驶仪 | |
CN102759926A (zh) | 基于双mcu实现的飞行机器人系统 | |
CN105511292A (zh) | 一种基于硬件在环分布式仿真平台及仿真方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150121 |