BLheli-F330电调相关实验方案

前言

BLheli 电调大家都在使用,尤其在穿越机上更是遍地开花,因此博主准备写一下这几天对于BLheil电调的相关制作经验。
博主玩了一年航模,一直走改装和自制路线,目前接收机遥控器已经趋于稳定,航模遥控技术也突飞猛进,于是阻拦博主继续嗨皮的有四大难题(主要是穷
1、电池(博主购买了一批拆机的汽车应急点火电池,改装了不少2-4S电池,于是不愁电池)
2、电机(博主掏了一堆大疆二手拆机无刷电机各种型号都有,以及闲鱼收一些损坏的电机翻修)
3、舵机(淘宝有不少工厂尾货舵机,经过测试比较好用,三四块钱一个)
4、电调(电调得用好的,而且普遍价格偏高,更主要涉及博主本专业,于是准备做个玩玩)
BLheli电调是什么博主不再赘述,只要知道他的固件和相关信息都是开源的就行,具体地址:
可以自行下载BLheli电调开源资料
博主研究了BLheli电调的两个板本c8051F330和EFM8BB21F16G
其中EFM8BB21F16G 主要用于多旋翼电调
c8051F330可以作为多旋翼,固定翼,直升机尾桨,本文重点讲c8051F330的版本。

一、C8051F330芯片引脚介绍

C8051F330是一个8051内核的8位单片机,其内部资源也很有限,其价格也很是友好,制作起来成本也比较低。
C8051F330电调大部分采用的QFN20封装。
BLheli-F330电调相关实验方案

其中P2.0和RST作为程序烧写口,他的最小系统电路如下:
BLheli-F330电调相关实验方案
博主专门制作了一个小核心板用于测试固件:
BLheli-F330电调相关实验方案

二、XP-12A硬件案例分析

	博主主要测绘了一下XP-12A小电调的电路。
	这个电调长这样子:

背面:BLheli-F330电调相关实验方案
正面BLheli-F330电调相关实验方案
通过C2接口读出其固件是XP12A,因此博主准备用设计的核心板和电调驱动板简单搭建一个XP12A电调。读取后软件界面如下图:
BLheli-F330电调相关实验方案
经过测绘和查阅XP12A的引脚定义文档发现其引脚功能如下:
XP12A引脚定义文档位置:BLHeli-master\BLHeli-master\SiLabs\XP_12A.inc 可以用记事本打开查看。因为篇幅原因博主只摘出关键信息供大家参考:

$include (c8051f330.inc)芯片型号

;**** **** **** **** ****
; Uses internal calibrated oscillator set to 24Mhz
;**** **** **** **** ****

;*********************
; PORT 0 definitions *     P0口相关定义
;*********************  
Rcp_In		EQU	7	;i      PWM信号口
Adc_Ip		EQU	6	;i      电池电压检测口
Mux_A		EQU	5	;i      电机A反电动势
;			EQU	4	;i          未定义
Mux_B		EQU	3	;i      电机B反电动势
Comp_Com		EQU	2	;i   反电动势公共口
Mux_C		EQU	1	;i      电机B反电动势
Vref			EQU	0	;i      未知

;*********************
; PORT 1 definitions *P1口定义
;*********************
;			EQU	7	;i   未知
;			EQU	6	;i    未知
ApFET		EQU	5	;o上桥A导通信号
BpFET		EQU	4	;o上桥B导通信号
CpFET		EQU	3	;o上桥C导通信号
AnFET		EQU	2	;o下桥A导通信号
BnFET		EQU	1	;o下桥B导通信号
CnFET		EQU	0	;o下桥C导通信号

MACRO AnFET_on   
	setb	P1.AnFET    下管高电平导通
ENDM
MACRO AnFET_off
	clr	P1.AnFET  下管低电平关闭
ENDM
MACRO BnFET_on
	setb	P1.BnFET  下管高电平导通
ENDM
MACRO BnFET_off下管低电平关闭
	clr	P1.BnFET
ENDM
MACRO CnFET_on
	setb	P1.CnFET  下管高电平导通
ENDM
MACRO CnFET_off下管低电平关闭
	clr	P1.CnFET
ENDM
MACRO All_nFETs_Off  下管低电平全关
	clr	P1.AnFET
	clr	P1.BnFET
	clr	P1.CnFET
ENDM

MACRO ApFET_on   
	setb	P1.ApFET上管高电平导通
ENDM
MACRO ApFET_off
	clr	P1.ApFET
ENDM
MACRO BpFET_on
	setb	P1.BpFET上管高电平导通
ENDM
MACRO BpFET_off
	clr	P1.BpFET
ENDM
MACRO CpFET_on
	setb	P1.CpFET上管高电平导通
ENDM
MACRO CpFET_off
	clr	P1.CpFET
ENDM
MACRO All_pFETs_Off
	clr	P1.ApFET
	clr	P1.BpFET
	clr	P1.CpFET
ENDM

MACRO Brake_FETs_On	 高电平刹车
	AnFET_on
	BnFET_on
	CnFET_on
ENDM

;*********************
; PORT 2 definitions * p2口定义
;*********************
DebugPin		EQU	0	;o//仿真口

P2_PUSHPULL	EQU	(1 SHL DebugPin)

查看该文档需要注意的有以下几点:
1、查看单片机型号,BLheli固件有很多单片机,不一定都是F330。
2、引脚定义,那个引脚接那个信号线。
3、MOS管的驱动逻辑,有的固件上下桥的导通逻辑不一样,硬件上做了反相器,所以大家要看清,这要和硬件配合使用。

知道了引脚定义下来主要说硬件电路。

三、硬件电路

1、反电动势采集

经过测绘其反电动势采集图如下:
BLheli-F330电调相关实验方案

2、电池电压反馈

BLheli-F330电调相关实验方案

3、PWM输入

BLheli-F330电调相关实验方案

4、电桥驱动

电桥驱动方案很多,有的采用N-Pmos搭配驱动,有的纯NMOS,各有利弊,小电流电调都采用的NP搭配,大电流的采用Nmos。
XP12A采用的就是NP搭配的情况,经过测绘,下桥的N管的G极直接接的单片机引脚,而上桥的P管栅极采用一个三极管做驱动,引出可以看出来上下桥都是高电平导通,低电平关断,其原理图如下:
BLheli-F330电调相关实验方案
而采用全N管时就需要做电桥驱动,航模电调大部分才用的电桥驱动芯片是FD6288,其线路如下图:
BLheli-F330电调相关实验方案
MOS连接图如下:
BLheli-F330电调相关实验方案
通过分析此图其实不难发现全N管驱动方式上下桥都是高电平驱动,所以大家采用其他固件时一定要注意硬件和软件逻辑的配合。

四、博主测试的硬件图

博主前段时间在某宝上买了个拆机电桥板,发现铝基板上贴了7片IPB160N04S4,实在太赞了
BLheli-F330电调相关实验方案
于是博主专门为其设计了一个驱动板:
BLheli-F330电调相关实验方案
最后的测试图:
BLheli-F330电调相关实验方案
博主用一个70涵道进行暴力测试,还是很带劲的。
最后奉送大家我的测试电路原理图:
BLheli-F330电调相关实验方案
此图就是上图的驱动板,喜欢的朋友可以拿去测试。
下期主要说一下EFM8BB21F16G 单片机电调以及BLheil suite的简单用法及固件烧录方法。

上一篇:洛谷 CF7E Defining Macros 题解


下一篇:大数据开发之Hive篇9-Hive宏(Macro)