你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【基于STM32】Stduino拓展学习(二)SG90舵机

[复制链接]
stduino 发布时间:2020-8-25 18:57
关键词:
51;stm32;Arduino;Stduino单片机;Stduino UNO&Nano;SG90舵机

) p+ I; t. q$ j! ]0 P  j# v! r说明:
伺服电机是一种有输出轴的小型设备。通过向伺服发送信号,可以将该轴转到特定角度。
. m0 T& ~  a/ {0 D1 U
实际上,伺服电机用于无线电控制的飞机中来定位控制面,如升降舵和方向舵。它们还用于无线电控制的汽车,木偶,当然还有机器人。正是因为早期在模型上使用最多,主要用于控制模型的舵面,所以俗称舵机。
舵机工作分成两个部分,检测舵机当前角度以及控制舵机转到特定角度。
A02-伺服电机展示图.jpg
基准信号
舵机内部有一个基准电路,产生周期为20ms、宽度为1.5ms的基准信号。基准信号(1.5ms)与控制信号(0.5ms~2.5ms)相比较,从而判断舵机应该往何种方向转动以及转动的角度大小。
例如,1.5毫秒脉冲(控制信号,周期20ms)将使电机转到90度位置(通常称为中性位置)。如果脉冲短于0.5毫秒,则电机将轴转到更接近-90度。如果脉冲为2.5毫秒,则轴转接近+90度。
A02-基准信号.gif
控制信号
舵机的控制信号为Stduino板输出的PWM信号,周期为20ms,其中脉冲宽度从0.5ms~2.5ms,对应舵盘的0°到180°,呈线性变化。
也就是说,给舵机提供一定的脉宽,它的输出轴就会保持在一个与之对应的角度上,直到下一个不同的脉宽出现,转到新的对应角度。
A02-sg90-控制信号.png
反馈信号
舵机接收来自信号线的控制信号,电机在转动时,会带动反馈电位计的转动,电位计将输出一个电压信号到舵机控制板,进行反馈,该信号与控制信号进行比较,从而调整转动方向与速度,直到反馈信号与控制信号相同。
A02-反馈信号.gif

- S0 t% _/ t& u" c+ X6 a
实验目的:
控制舵机由左向右转动180°,再反方向转回。
) ^' S6 e) E  D! y" r
器材:
Stduino Nano/UNO;4位数码管;杜邦线;SG90舵机
电路连接:
A02-sg90-电路图.png
4 L$ q! [2 R: K0 F3 T6 X$ E
代码展示:
  1. #include <Servo.h>. l' P2 z. Q% `3 ]4 Y
  2. Servo myServo; //创建一个舵机控制对象
    & [* {" k# a" k4 I! O" w, |- y! o
  3. int pos=0; //角度(0~180°)) s4 ?& _% x; x. }* g8 F

  4. : E0 Z7 ?* t( B, K4 ?
  5. void setup() " ^1 N1 r' U  T2 B5 f
  6. {, r3 V( p; \: ?+ ^" q" C
  7.     myServo.attach(12); // 该舵机由Stduino第12脚控制- o2 ~1 l, Q/ e
  8.     myServo.write(pos); 2 D) i) I# N7 O5 x) N
  9.     delay(15);$ F/ [, D) |# i* m
  10. }( P6 }; t$ [( y+ w
  11. $ [5 e: j3 u$ }* k9 l7 E
  12. void loop()
    1 Z, |# l" ~* ^4 G- F5 R
  13. {
    4 l6 T% ]: ^4 A1 @# o: c
  14.     for (pos = 0; pos <= 180; pos += 1) ; h  c0 u3 X1 ]6 A/ t; g8 J. c
  15.     {
    & G6 Y6 V, m+ x" j- a9 F
  16.         myServo.write(pos);              3 o7 @# m1 b+ J3 l/ Y0 w4 r( @
  17.         delay(15);                       
    ) r$ C' \! l1 m8 D; R- v" P
  18.     }
    * o  |' s. P- x6 s
  19.     delay(60);
    - r! E0 m! K1 f. e( e
  20.     for (pos = 180; pos >= 0; pos -= 1) 1 Y) L! z- n5 U3 S& I6 T
  21.     { 4 @" l/ i4 X# m4 }* h
  22.         myServo.write(pos);              3 @9 q& I- p) J  B- n4 h3 \( V
  23.         delay(15);                       
    + E* D& o: A/ O' n. r# d& B* x4 T9 I
  24.     }. C! Z# T. L9 ~( g
  25.     delay(60);. @/ F( m+ {# H! H2 {  ~1 ?
  26. }
复制代码
) C: F- R( \% |; D, E
* r+ \5 x/ Q, s+ D


! C$ ?9 p/ ^% p' ?, V

Stduino IDE是一款面向32位处理器快速入门学习的集成开发平台,目前已经支持Arduino_Core_STM32框架,集聚快捷、高效、免费、开源、易得于一身,软件还集成了GDB调试功能。
% p. ~* ~" i& UIDE当前支持的功能有:

    ! {# O2 K2 J# m# T& q- t2 w  ?" E

    - \( }% S" c0 e/ O/ ?7 W
    ; v, d' q" u' W. N
  • GDB调试
  • 封装库下载安装
  • 代码自动补全提示
  • 中英文模式
    6 ~0 g$ x0 N3 y
  • UTF-8\GBK编码格式
    6 r3 J. t) Z6 k2 J$ l
  • 代码快速格式化
      t, r$ k+ T3 Q% S# x" Z( n
    2 z0 a6 M+ ~8 a2 x7 p, S$ D. I, I) u) A
  • SWD\串口程序下载&调试(已验证): l6 z6 Z' d9 h: D: _3 Y) W5 e5 b+ H6 F# \
    / t0 b( ~) S: c, M
  • DFU程序下载方式(待验证)# @3 O& u: E. X$ V. @6 x

    + d# L( x/ w3 z9 k4 C& h
  • USB HID程序下载方式(待验证)( K8 E1 u) K1 p: \

    6 _, B! U. p: H$ X( R. V
  • maple DFU程序下载方式(待验证)( I/ j/ r' K6 {
    ! y. [6 f2 z# k9 l2 d! U! O# G$ d. b
  • maple DFU2程序下载方式(待验证)2 k) k- L! f" n
    5 T7 p% \  L# X5 i7 `' |8 c, b
    ; A7 V* I3 G$ {5 s0 V. f9 {: M
  • MassStorage程序下载方式(待验证)
    2 D" s: \( Q6 ]$ K
    5 O( q+ f6 M6 C8 |8 u0 ^1 s* |
    更多功能细节请前往www.stduino.com
    进行了解
    1 ^2 B0 F! p9 d

    已经支持的芯片&板型列表:


    6 _' V2 D8 b& Z  [9 B2 K. J
    • Stduino UNO&Nano
    • Nucleo 144 boards
    • Nucleo 64 boards
    • Nucleo 32 boards
    • Discovery boards
    • Eval boards
    • STM32MP1 series coprocessor boards
    • Generic STM32F0 boards
    • Generic STM32F1 boards
    • Generic STM32F3 boards
    • Generic STM32F4 boards
    • Generic STM32H7 boards
    • Generic STM32L0 boards
    • 3D printer boards
    • LoRa boards
    • Electronic Speed Controller boards
    • Generic flight controllers
    • Garatronics boards
    • Midatronics boards8 d: W5 G" k$ l1 c3 R

      # C$ Z* l6 I6 i# d  g3 p. ^4 f

      更多功能集成正在进行中~

      ! H/ f7 ~5 e4 E. @

    . y7 o% ?2 V  h; w( q

4 V: H# o3 l% K% H3 b
赞 收藏 评论0 发布时间:2020-8-25 18:57

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版