716空心杯电机参数_基于STM32制作有刷四轴飞控,改造空心杯小四轴

本文介绍了基于STM32F103C8T6和GY-521模块自制有刷四轴飞控的过程,包括材料清单、飞控板焊接和烧写Betaflight固件的详细步骤,特别强调了空心杯电机的选择与MOS管的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前几天制作了无刷四轴飞控板(STM32F103C8T6开发板+GY521制作NAZE32飞控板详细图文教程),效果还不错,在此基础上加了MOS驱动电路,把这个飞控装在了空心杯小四轴上,成功把它救活。现把制作过程记录如下。

1.材料清单

CH340串口下载模块1个(2.5元)

STM32F103C8T6黑色开发板1个(11.5元,也可以使用蓝色板)

GY-521加速度计模块1个(3.8元)

IRLML2502TRPBF N沟道MOSFET贴片4个

肖特基二极管2个

ss8050三极管2个

470Ω电阻4个,1k电阻1个,10k电阻5个

还有线材、插针若干,以上这些材料大部分可以一站式购齐的,其中一些耗材简直电子爱好者必备,可以适当多买点。

2.焊接飞控板

飞控板原理图如下,要焊接的引脚不多,只是注意一下走线,按照自己的意愿来就可以了。

有三种接收机模式可以选择:SBUS(三根线)、PPM(三根线)、PWM(每个通道都要接线-8根线)。

4个空心杯电机的正负极有讲究,对角线上的接法相同(转向相同)。不装桨的情况下轻触转轴判断转向,如果和软件中转向不同,则需要对调电机的正负接线。

MOS管建议用大电流的,笔者一开始用的AO3400最大电流只有2.8A,带不动电机很容易烧,后来换了IRLML2502T

根据提供的引用内容,关于STM32F103C8T6开发板和空心无人机的制作,可以参考以下步骤: 1. 了解STM32F103C8T6开发板:STM32F103C8T6是一款基于ARM Cortex-M3内核的微控制器,具有丰富的外设和强大的性能,适合用于飞行器的控制。 2. 选择空心无人机机架:空心无人机机架是一种轻巧稳固耐摔的机架,适合用于DIY飞行器。可以在某宝等平台上搜索并购买适合的机架。 3. 选择合适的电机:根据需求选择合适的电机,可以参考引用中提到的通用720空心杯电机。电机的选择要考虑推力、功率和重量等因素。 4. 连接电机和开发板:将电机连接到开发板的PWM输出引脚上,以便控制电机的转速和方向。 5. 添加加速度计模块:可以使用GY521加速度计模块来获取飞行器的姿态信息,以便进行姿态控制。 6. 编写飞行控制程序:使用STM32F103C8T6开发板的开发环境,如Keil或STM32CubeIDE,写飞行控制程序。程序需要实现姿态控制、电机控制和通信等功能。 7. 调试和测试:将开发板连接到计算机上,烧录飞行控制程序,并进行调试和测试。可以使用串口通信或者无线通信模块与地面站进行通信。 8. 完善和优化:根据实际需求,对飞行控制程序进行完善和优化,提高飞行器的性能和稳定性。 以下是一个示例的代码片段,用于控制个电机的转速: ```c #include <stm32f10x.h> // 定义电机控制引脚 #define MOTOR1_PIN GPIO_Pin_0 #define MOTOR2_PIN GPIO_Pin_1 #define MOTOR3_PIN GPIO_Pin_2 #define MOTOR4_PIN GPIO_Pin_3 // 初始化电机控制引脚 void Motor_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); GPIO_InitStructure.GPIO_Pin = MOTOR1_PIN | MOTOR2_PIN | MOTOR3_PIN | MOTOR4_PIN; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure); } // 设置电机转速 void SetMotorSpeed(uint16_t speed1, uint16_t speed2, uint16_t speed3, uint16_t speed4) { TIM_SetCompare1(TIM1, speed1); TIM_SetCompare2(TIM1, speed2); TIM_SetCompare3(TIM1, speed3); TIM_SetCompare4(TIM1, speed4); } int main(void) { // 初始化电机控制引脚 Motor_Init(); // 设置电机转速 SetMotorSpeed(1000, 1000, 1000, 1000); while (1) { // 主循环 } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值