z1413 发表于 2023-2-15 00:56:31

经典开源飞控 -- CC3D硬件解析

CC3D硬件算是开源飞控比较古老的一族了,也成为F1飞控,成本较低,性能相对比较稳定。但是由于算力不足以支持现有复杂的控制算法,所以现在用的越来越少。被一些开源飞控界的新宠如APM, PIX,F3, F4, F7等替代。





CC3D之所以叫F1飞控,是因为主控芯片用的是STM32F103CBT6型号的芯片。拥有128KB的FLASH程序储存空间,20KB的内存空间。运行一般的飞行控制程序是没什么问题的。

原理图解析

飞控板与电脑通讯使用一个MINI-USB口,没有板载USB转TTL电路,而是采用软件虚拟串口驱动实现,所以新的飞控板没有刷固件的时候,连接到电脑是识别不到COM口的。还有就是D+线接了一个1.5K的上拉电阻,用于计算机识别插入设备。



芯片晶振采用的是8MHZ的无源晶振,外置了两个18PF的起振电容。如果起振电容和晶振不匹配,则程序无法运行,固件不会自动切换到内置RC振荡器,所以这里出问题,会影响到USB通讯和正常工作。



为了支持SBUS接收机信号。硬件上采用了一颗SN74LVC1G86DCKR异或芯片,SBUS信号接口连接到异或芯片的IN1,IN2接到主控芯片IO上,OUT接到USART1的RX上,通过控制异或芯片IN2的电平就可以达到对IN1信号取反或者不取反的两种电平效果。(SBUS硬件通讯采用的是USART通讯,只不过采用的是反向电平。所以要想识别信号,就要对信号取反处理)



电路板将USART3引出来,加了两个10K上拉电阻,可以当串口连接GPS或者数传,也可以配置成IIC总线,扩展一些气压计、磁力计等传感器。



SPI2总线连接了一颗16Mbit的FLASH,拥有2MB的储存空间。用来保存一些调参日志,记录飞行曲线等数据。



PWM输出端口有6个,机型最大支持到6轴,可以使用TIM4和TIM3的资源输出PWM信号,一般信号周期配置为50HZ。支持市面上大部分的舵机和电调。



输入PWM信号有6路,经过6个通道的硬件滤波器芯片,连接到MCU接口上,测量数据可以采用TIM3和TIM2定时器。SI6_IN通道可以测量PPM接收机。



板子采用两颗小体积,低压差的线性LDO,生成两路独立的3.3V电源,一路MCU使用,一路陀螺仪使用。



IMU采用的是MPU6000,内置三通道的陀螺仪和三通道的加速度计。可以使用SPI或者IIC接口,这里使用的是SPI协议,连接到主控的SPI1接口上



还内置了一个板载的LED,用来指示飞控板目前的状态,低电平点亮。



CC3D硬件源文件图纸领取:

我这里有CC3D设计文档的源文件和PCB文件,文档可采用AD软件打开。文件亲自打板验证过没有问题。想要亲自DIY一波的朋友底部评论或者私信邮箱发给我。统一使用邮箱发送。

想共同学习的朋友也可以关注我,后期发布一些关于openpilot,cleanflight, betaflight,代码修改编译等教程。

青岛大疆守强 发表于 2023-2-15 01:03:33

转发了

pmx1225 发表于 2023-2-15 01:10:43

下一期可以发cleanfight吗

13619860410 发表于 2023-2-15 01:22:39

CC3D算是比较早的开源飞控了
页: [1]
查看完整版本: 经典开源飞控 -- CC3D硬件解析