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

基于MC SDK5.0 API,速度控制与电机启动停止,任务1

[复制链接]
freeelectron 发布时间:2018-9-2 16:00
本帖最后由 freeelectron 于 2018-9-2 16:56 编辑
7 C; T7 y) P. C- r! E: j* i- q5 P, w8 k+ i2 A
        通过任务1:主要熟悉调用MC API实现电机基础操作,了解速度参数设定 。" d) _" Z- r+ Y0 R$ w! b/ D- J- y
2.png
        添加代码,通过最简单的方法,将代码添加到while (1)即可
  1.   while (1)1 ^- g& S5 n# d5 u# t2 P; V
  2.   {  \+ U3 e$ \( a# _8 i
  3. * j% r, d7 v# i" Q$ A* Z( T0 z7 T
  4.   /* USER CODE END WHILE */
    9 ?1 b- Q! \1 g" k. N

  5. ( n2 E9 e# }9 @9 b3 _
  6.   /* USER CODE BEGIN 3 */  ]- J# ?5 Y! d# o4 W7 s
  7.      MC_ProgramSpeedRampMotor1(3000/6,1000);
    + F1 o6 x" h- g* X( I' w# d! q5 U
  8.      MC_StartMotor1();
    ( Z% B6 a* `0 l: R# r
  9.      HAL_Delay(10000);
    / u0 V7 ?5 b: k, `& r, M
  10.      MC_StopMotor1();9 I0 Q$ A/ F: y2 A! q; O# b% q
  11.      HAL_Delay(5000);
    3 R& u, J) r0 E. Q/ }5 T9 `
  12.   }. X3 K. F2 N: }- l
  13.   /* USER CODE END 3 */
复制代码

& t' O" ~6 l7 A& w; P- l
. C" D& {9 i. N0 K
         速度波形查看:6 {- O4 ^6 R* v5 z; s- n% o  i

( I' D- g; b, _, b+ _8 J
4.png
0 e$ E" [) m9 I, D5 [  l; \
           API说明:
           void MC_ProgramSpeedRampMotor1( int16_t hFinalSpeed, uint16_t hDurationms );
6 `; X2 @; f) N
             //设置速度指令。.在调用此函数后速度指令在 hDurationms 设置的时间内由当前速度变化到 hFinalSpeed设置的目标速度。+ e1 R% j6 ~- J: {2 M. p
             MC_StartMotor1();
% f6 ?( ]: m  {- B             //启动1 N# l: v* ?) B$ {( }+ d
          MC_StopMotor1();) O$ z* c9 r- d9 m$ m
          //停止
  D: n* y* @- I+ \" |
5 `( k5 o1 c6 Q# K; q* E) R" {, z9 r2 e0 m# X" c
收藏 1 评论6 发布时间:2018-9-2 16:00

举报

6个回答
zero99 回答时间:2018-9-3 17:33:04
支持下
freeelectron 回答时间:2018-9-3 19:37:25
zero99 发表于 2018-9-3 17:331 b& Z8 {5 }2 L, D. A9 m4 |1 h  K
支持下

, s9 c3 D  l6 j, S: m5 j
pinganbo 回答时间:2018-9-11 14:48:25
请问,MC_ProgramSpeedRampMotor1(3000/6,1000);里的3000/6是啥意思?为什么还要除以6?
liujunfy527 回答时间:2018-10-26 21:14:50
谢谢分享
晴空 回答时间:2018-10-27 13:23:48
不错  学习
Kevinzzznn 回答时间:2020-3-26 17:14:25
ananbo 发表于 2018-9-11 14:48* q" ^- E& T2 j, C
请问,MC_ProgramSpeedRampMotor1(3000/6,1000);里的3000/6是啥意思?为什么还要除以6?
$ W% n( w; _/ T9 Y, P/ n! Y4 W2 P
最终目标速度的按照ST的转速定义是0.1Hz,转子的0.1HZ也就是0.1r/s。电机转速的常规表达是RPM,即转每分;ST的MCSDK中有三种速度的表达。这里使用的是 0.1转每秒。如果电机电机的转速是1000转,这里的值就是1000[rpm]/60s/10=16.7[0.1rps]。

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版