QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
6天前
查看: 2364|回复: 8
收起左侧

[讨论结束] 实现“计算机控制四个电机联动”,我想用C++来编程,如何处置?

 关闭 [复制链接]
发表于 2008-5-26 17:44:01 | 显示全部楼层 |阅读模式 来自: 中国黑龙江哈尔滨

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
我目前是要实现计算机控制四个电机联动- T; G" H4 e& w7 H' F; b
计算机通过RS232和主电机驱动器相连,四个驱动器通过CAN口连接。
2 T7 n" q5 ^5 o: |4 e" R如何通过编程实现电机联动啊?我想用C++编
3 `  _( K7 \. h. P  T请老师们赐教~
: X. W5 J% u; c' |/ x; M5 C( \说明书全是英文,虽能看懂大概,但没做过相关的编程控制,还是一头雾水,没法下手,请老师们给予指点!$ A0 t# n9 u2 T+ H8 @$ \+ Q0 S- n. D

$ e4 w% |8 Z5 b/ ?; O8 Z9 f' l, F[ 本帖最后由 zhous_ch 于 2008-5-26 21:20 编辑 ]
发表于 2008-5-26 17:53:32 | 显示全部楼层 来自: 中国广东深圳
呵呵,不知道你用的什么牌子电机驱动器.* u: O/ _! s; G! f+ }
要是用KINCO的伺服驱动器和PLC控制是比较简单,程序可以通过PLC来控制连动
) l' g# q/ C% o7 `你可以试加PLC进行控制,要比较简单吧
发表于 2008-5-26 19:36:17 | 显示全部楼层 来自: 中国江苏盐城
我也想呀!但是想来想去感觉程序太难了!所以只好放弃了!
 楼主| 发表于 2008-5-26 20:56:37 | 显示全部楼层 来自: 中国黑龙江哈尔滨
我们是使用maxon电机 用EPOS驱动器& v8 @$ z+ q" `. `2 w
不让用PLC啊. G# E. M" c% x; d/ ~
编程时可以直接调用说明书提供的函数7 q# \+ J/ Z6 q9 h0 g- l! L) a
但我不知道程序的流程应该是怎样(先干什么 再干什么)
8 u% g( A6 J: f, y* R请老师们帮帮忙~
发表于 2008-7-25 11:16:01 | 显示全部楼层 来自: 中国浙江杭州
用哪种语言有区别么?
发表于 2008-7-25 14:38:39 | 显示全部楼层 来自: 中国河南郑州
我觉得这是个比较简单的事情。而且还有现成的库函数。只是操作串口而已。
发表于 2008-7-25 15:38:00 | 显示全部楼层 来自: 中国山东潍坊
你这不叫“四个电机联动”,至少我不这么认为,只不过是控制四台电机同时动作而已。0 S$ h% R1 ?6 R3 i
接口函数都告诉你了,调用起来也不是很麻烦吗,用C++做个界面,用c写控制程序。所谓程序不过是初始化接口,传送数据,而已,把他们提供的程序好好看看。
发表于 2008-8-10 20:19:52 | 显示全部楼层 来自: 中国上海
找一块 驱动卡 如楼上那样处理就可以了
发表于 2008-9-2 22:20:47 | 显示全部楼层 来自: 中国河北石家庄
使用C8051F040高速SOC单片机、L298N直流电机驱动芯片,软件编程可在Siliocn Labortories集成开发环境(DIE)下通过JATG接口进行编程,不需要专用编程器或适配器;还可以通过用户软件对FALSH进行编程,允许现场更新固件为产品的软件升级提供了极大的方便。/ e' h7 @2 }- d  [( z1 m, h
本设计中的应用程序是在Keil C51的开发环境下编译后用EC-3仿真器下载到芯片中运行的。主要程序代码如下:  |; w8 P) o: \
//交叉开关配置,将6路PWM输出配置到P0端口
" A+ D2 B1 s/ W5 R0 pvoid config(void)
0 f( I2 b9 t, U9 M  Z# l7 s6 Y{
$ n" M4 Z5 T8 L1 o. V! `6 c) x% AXBR0=0x30;//将6路PWM输出配置到P0.0-P0.5端口( ^0 V: H  g. Q( x, j
XBR1=0x00;
$ X9 g% U$ }8 gXBR2=0xc0;//开启交叉开关,全局上拉开启
2 |3 C/ C) M) m# L" L, C2 GXBR3=0x00;( m/ F* B, e4 F) H6 l
}
1 e3 i$ O6 w0 C. @) w7 S//配置T0定时器,定时时间1毫秒,系统时钟24MHz
2 z" K$ Y$ S- OVoid Timer_cfg(void)
# m$ y  m$ R1 u{
: ^$ \1 p$ O! q+ J8 WTMOD=0x01;//采用定时器0的方式1
8 G* @6 s$ y# ]) c  x4 DTH0=0xf8;
) x3 i: |! \; U' a& XTL0=0x2f;. ~2 d; T2 T' d
TR0=1;3 k2 u2 z" z( I0 h9 m9 I1 \( ]+ z
}1 z* J$ K6 H$ s7 s$ U1 i, ?7 _9 S1 v
//配置PCA定时器
% m+ x! N6 i# nVoid pcainit(void)- g! i' W( E8 _
{
3 f' ?. u2 H) C; _8 @0 `- S  m" W% tSFRPAGE=0x00;0 g4 _5 R. I5 a/ H8 x# h. Z5 W' w6 V
PCA0CMP0=0x42;
1 K2 o% V3 J# D, aPCA0MD=0x04;//PCA采用T0溢出时钟,且PCA溢出中断禁止
& R7 t9 P+ Q& _2 ?6 E5 zPCA0CN=0x40;//启动PCA计数器0 y- u$ M" l$ l
}: B7 Z. y$ J( _7 X, q+ E
//占空比设置,设置为255时,可使电机停止转动
1 I; r% `! T; X8 R% t) QVoid PWM_SET(uchar channel,uchar low)
- J9 A- i$ a. p% S{
" S0 t  L5 c9 p) b0 L7 W. c4 c8 qSFRPAGE=0x00;% I+ t0 [* `2 ~, U* @
Switch(channel); K$ n6 ]( c2 }2 U4 d$ r1 v
{
- Q6 t: l9 z8 G$ [8 q" a9 m: qCase 0:PCA0CPH0=low;break;
+ C) R# o5 G2 T: A! XCase 1:PCA0CPH1=low;break/ L# L( ]5 _3 D
Case 2:PCA0CPH2=low;break% x% d! D7 q! B5 G& n2 M: G: W. P/ S
Case 3:PCA0CPH3=low;break
+ E1 r) }' P, z7 F4 V! OCase 4:PCA0CPH4=low;break6 c6 s. X0 C; ?9 X& o
Case 5:PCA0CPH5=low;break
) e! i( \8 l1 |, Z6 j; lDefault:break;
/ ^8 @, R1 c+ d* A, f* \1 X& s}
$ s8 q; J! C2 A* q) g}$ g0 Y# z! k/ Z5 J1 ]/ X$ ]- p5 d
//运动方向设置
1 l1 a+ b- [3 v, PVoid Direct_set(uchar channel,bit dir)
# M8 @0 K& M. w" N$ }' i! P; M{" {& H5 F$ I3 _
Switch(channel); Z+ y2 n4 q9 M6 v9 U4 R; w
{
$ u' s& W% t4 O- VCase 0:P4.0=dir;break;
8 H2 w, s# |! J8 G) u' @Case 1:P4.1=dir;break
! U! I1 u, o8 J* l+ w! _1 L4 q( W( }Case 2:P4.2=dir;break
. H4 {2 L8 ~4 @: M; Q- e1 R+ {Case 3:P4.3=dir;break, i' G# N- T) A$ L1 z6 a) s" h
Case 4:P4.4=dir;break
1 B% h9 S5 |! @4 QCase 5:P4.5=dir;break
! Q: Z% @; k7 uDefault:break;. e$ l3 n& P# E: z' M# n7 M
}
& \/ `8 V4 J7 \% A}- w$ V8 j  o5 O' z* y- w0 z. X& l: m2 O
在电机起动时,先输出高占空比的PWM信号,让电机获得较大的起动力矩,然后再过渡到设定的PWM脉宽。另外结合片内的A/D转换器检测Rsa上的电压,可得到电机的工作电流,以此为依据对电机的运行状态进行检测,保证电机的运行安全。
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表