Arduino 控制出锡膏案例-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1078|回复: 0

Arduino 控制出锡膏案例

[复制链接]
发表于 2022-5-17 10:15 | 显示全部楼层 |阅读模式
本帖最后由 461968533 于 2022-5-17 10:15 编辑

第一次用Arduino做一个小项目期间实验无数想了很多方法,最后终于做出这套小设备,希望给小白们借鉴一下案例,也希望大神们能指出不足之处共同学习。
先说一下项目目的:用Arduino控制57步进电机带动平台运动,过程中电磁阀工作出气推动气管里面的锡膏出锡。最终结果是在焊盘上拉一条均匀的锡膏。
所用材料有:24V电源,降压器(24V转12V用于Arduino和传感器供电),5V继电器,Arduino UNO板,DM542步进电机驱动器,57步进电机,减压阀,24V电磁阀。X轴平台。
首先用SolidWorks画3D图纸,铝型材按照图纸裁切组装,把各两件组装好,因为刚开始画图纸没买齐材料后面来的材料都是用热熔胶料固定的。后面又增加了一个Arduino的控制板,郁闷的是加工LED灯给我做反了。也只能反着用了。
看成品:线接的有点乱,最终结果还是比较满意的。

代码部分:
volatile int i;                          //定义一个变量i
void setup(){
  i = 0;
  pinMode(5, INPUT_PULLUP);              //引脚5为上拉输入高电平,自动模式开关
  pinMode(6, INPUT_PULLUP);              //引脚6为上拉输入高电平,启动开关
  pinMode(A0, INPUT);                    //引脚A0为输入模式,传感器1开关
  pinMode(3, OUTPUT);                    //引脚3为输出模式,电机正反信号
  pinMode(A1, INPUT);                    //引脚A1为输入模式,传感器1开关
  pinMode(4, OUTPUT);                    //引脚4为输出模式,出锡开关
  pinMode(2, OUTPUT);                    //引脚2为输出模式,电机信号
  pinMode(7, INPUT_PULLUP);              //引脚7为上拉输入高电平,手动模式开关
  pinMode(8, INPUT_PULLUP);              //引脚8为上拉输入高电平,X轴正方向开关
  pinMode(9, INPUT_PULLUP);              //引脚9为上拉输入高电平,X轴负方向开关
  pinMode(10, INPUT_PULLUP);}            //引脚10为上拉输入高电平,出锡开关
void loop(){
  if (digitalRead(5) == LOW && digitalRead(6) == LOW) {    //引脚5和6同时为低电平才能进入自动模式
    if (digitalRead(A0) == LOW) {                          //传感器判定防止越位
        digitalWrite(3,HIGH);}
      if (digitalRead(A1) == LOW) {
        digitalWrite(3,LOW);}
    for (int i = 0; i <= 2400; i = i + (1)) {             //每80跑1mm
      if (i > 10 && i < 2000) {                           //如果i在这个范围就出锡,否则不出锡
        digitalWrite(4,HIGH);
      } else {digitalWrite(4,LOW);}
      digitalWrite(2,HIGH);
      delayMicroseconds(1000);
      digitalWrite(2,LOW);}}
  if (digitalRead(7) == LOW && digitalRead(8) == LOW) {  //引脚7和8同时为低电平才能手动向X轴正方向走
    digitalWrite(3,HIGH);
    digitalWrite(2,HIGH);
    delayMicroseconds(1000);                             //延时时间越长跑的越慢
    digitalWrite(2,LOW);}
  if (digitalRead(7) == LOW && digitalRead(9) == LOW) {  //引脚7和9同时为低电平才能手动向X轴负方向走
    digitalWrite(3,LOW);
    digitalWrite(2,HIGH);
    delayMicroseconds(1000);
    digitalWrite(2,LOW);}
  if (digitalRead(7) == LOW && digitalRead(10) == LOW) {  //引脚7和10同时为低电平才能手动出锡
    digitalWrite(4,HIGH);
  } else {digitalWrite(4,LOW);}}


3D图纸

3D图纸

最终结果

最终结果

实物

实物

LED接线

LED接线

接线说明 Model (1).pdf

54.25 KB, 下载次数: 4

接线说明

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 06:27 , Processed in 0.102733 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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