查看: 4776  |  回复: 11
GD32 MCU 开发板 Workshop 报告:多路舵机测试平台 本帖主对外承接开发, 联系作者

主题

回复
该帖子为嘉立创认证过的开发案例,案例是对作者实际开发产品的介绍,您可以通过这些案例去找到和自己产品相关的一些方案或解决途径。 查看更多案例 >>
发表于2019-05-16 22:39:58 | 显示全部楼层
1# 电梯直达

多路舵机测试平台

一、方案简介

介绍方案之前先来介绍一下什么是舵机及舵机的控制原理:

1、什么是舵机

舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。目前在高档遥控玩具,如航模,包括飞机模型,潜艇模型;遥控机器人中已经使用得比较普遍。舵机是一种俗称,其实是一种伺服马达。

 

2、舵机的控制原理

舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms~2.5ms范围内的角度控制脉冲部分。以180度角度伺服为例,那么对应的控制关系是这样的:
      0.5ms-----------    0
      1.0ms-----------  45
      1.5ms-----------  90
      2.0ms-----------135
      2.5ms-----------180

机上有三根线,分别为VCCGND、信号线。小型的舵机工作电压一般为4.8~6V,大功率的舵机有的为12V24V。信号线的控制不需要另外接驱动模块,直接用单片机的管脚控制就行了。控制信号一般要求周期为20msPWM信号。

3、方案简介

本方案基于GD32E231C8T6,ARMCortex-M23内核的MCU为主控,制作一个多路舵机测试系统,通过单片机timer2输出两路PWM信号驱动SG90型号舵机,并通过USART0USBTTL模块与上位机进行通讯,在上位机界面可以方便的设置每通道舵机的旋转角度,并能自动或手动测试每一通道舵机的好坏。

 

二、GD32 MCU产品介绍

GD32E231 MCU主要规格参数:

Cortex-M23内核 32-bit处理器主频高达72MHz

Flash:64KB

SRAM:8KB

ADC:12-bit

OP-AMP:两路

16位通用定时器:5

基础定时器:1

PWM高级定时器:1

SPI:两路

I2C:两路

USART:两路

I2S:一路

操作电压:1.8V~3.6V

温度范围:-40~85

 

三、方案介绍+方案系统框图

    本方案分上位机开发和下位机单片机编程两部分,上位机用C#开发,主要是界面部分和对应功能的实现,下位机主要是接收上位机下发的指令来执行相应的动作,大体流程是通过上位机发送相应指令给GD32E231GDE231接收到相应指令后并解码成功,由Timer2产生两路PWM信号,两路PWM信号输出至PB4PB0脚来驱动两路舵机,本实验采用的是SG90型号的舵机,也可换用其他型号舵机进行测试。

 

 

四、照片实力和功能的实现

  点击查看大图

 点击查看大图

 点击查看大图


 

五、代码分享

PWM多路舵机控制.rar 上位机多路舵机测试平台.rar 


主题

回复
发表于2019-05-17 21:29:59   |  显示全部楼层
5#
你用的是什么软件下载程序到芯片上?FlyMcu这个软件下载不了。用GigaDevice_MCU_ISP_Programmer这个软件能连接上,并且能读到芯片的flash大小。就是无法下载软件到芯片上。

主题

回复
发表于2019-05-17 21:39:21   |  显示全部楼层
6#

GD-Link_ProgrammerGD我用这个软件无法连接上。

我用的串口工具是:Pl2303这个usb转串口。GigaDevice_MCU_ISP_Programmer程序能连接上开发板。用FlyMcu无法连接上。


主题

回复
  • 温馨提示: 标题不合格、重复发帖、发布广告贴,将会被删除帖子或禁止发言。 详情请参考: 社区发帖规则
  • 您当前输入了 0 个文字。还可以输入 8000 个文字。 已添加复制上传图片功能,该功能目前仅支持chrome和火狐

禁言/删除

X
请选择禁言时长:
是否清除头像:
禁言/删除备注:
昵 称:
 
温馨提示:昵称只能设置一次,设置后无法修改。
只支持中文、英文和数字。

举报

X
请选择举报类型:
请输入详细内容:

顶部