arduino实现42步进电机运动控制(一) | 您所在的位置:网站首页 › tmc2225电路 › arduino实现42步进电机运动控制(一) |
目录 电路 材料清单 前期调试 组装电路 软件 效果 存在的问题 细分 发热 本文参考了【考拉工作室】单片机入门——Arduino控制步进电机拖动直线模组_哔哩哔哩_bilibili 电路 材料清单从某宝购买: 42步进电机,附送6pin转4pin杜邦线 电机驱动TMC2209,附送散热片 驱动扩展板 杜邦线若干 arduino uno,及相应的usb数据线 上位机一台 12伏电源,电源最大输出电流最好在2A或以上。我只有一个1.5A的,凑合了。 万用表 前期调试验证TMC2209是否正常 1 将TMC2209接入扩展板。 2 将12V电源的输出接入扩展板的输入端。注意,暂时不要让扩展板和42电机相连!否则驱动可能烧毁! 3 接通12伏电源。 4 使用万用表的电压档测量TMC2209的螺丝型电位器与GND之间电压。红表笔连电位器,黑表笔连GND 5 默认出厂的电压是1.25V左右。根据淘宝页面描述,TMC2209的输出电流和这个测量电压是1:1关系,即1.25A。假如你测量到了1.25V左右电压,说明TMC2209正常。 6 断开12伏电源。 组装电路下面的操作中,涉及接触电子元件。为避免静电损坏元件,强烈建议操作者采取防静电措施。具体自行百度。 1 将TMC2209插入扩展板。注意取向:TMC2209板上的可调电位器一侧应靠近扩展板的MS1,MS2,MS3 2 给TMC2209贴散热片。注意散热片不要接触两边焊脚,避免短路。散热片底部有一张塑料纸。撕下塑料纸,露出胶,贴到TMC2209无芯片的那一面。 3 将扩展板上三个switch: MS1 MS2 MS3 全部设置为0。将12V电源的正负输出接入扩展板接线柱。但12V电源不通电 4 用6pin转4pin杜邦线连接42电机和扩展板。在扩展板上,1A-1B是一个线圈的两极;2A-2B是另一个线圈的两极。根据厂家提供的接线图,确认电机的线圈1的正负极接入1A1B,电机线圈2的正负极接入2A2B,A不一定对应线圈的+,B不一定对应线圈的-,但是假如1A对应线圈1的+极,那么2A也要对应线圈2的+极,类推B。否则应调整线序。 5 用杜邦线连接下述针脚: 扩展板EN -- arduino 7 扩展板STEP -- arduino 5 扩展板DIR -- arduino 6 扩展板Vcc -- arduino 5V 扩展板gnd -- arduino gnd 6 将arduino接入电脑 7 扩展板的12V电源通电 8 在上位机烧写arduino程序。烧写办法在此不赘述,仅奉上代码。 软件使用arduino IDE 1.8.10 #define INTERVAL 100 void setup() { // put your setup code here, to run once: pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT); digitalWrite(7, LOW); } void loop() { // put your main code here, to run repeatedly: digitalWrite(6, HIGH); for(int k = 0; k < 1600; k++) { digitalWrite(5, HIGH); delayMicroseconds(INTERVAL); digitalWrite(5, LOW); delayMicroseconds(INTERVAL); } delay(1000); digitalWrite(6, LOW); for(int k = 0; k < 1600; k++) { digitalWrite(5, HIGH); delayMicroseconds(INTERVAL); digitalWrite(5, LOW); delayMicroseconds(INTERVAL); } delay(1000); } 效果arduino uno驱动42步进电机 存在的问题 细分实验发现,扩展板的MS3 switch的位置对步进细分的调节无影响。将MS2 与MS1同时置于0位,步进电机位于1/8步进的状态,即一个脉冲步进1.8°/8.这是此套装置的单脉冲所能达到的最大步进。假如你需要1/2步进,可以考虑使用TMC2226;或者一个完整的步进,见下一篇博客。 发热42电机与TMC2209的发热均严重,尤以42电机为甚。后续可考虑增加风扇散热 |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |