淘晶驰串口屏上位机-arduino 自动小焊机-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5237|回复: 6

淘晶驰串口屏上位机-arduino 自动小焊机

[复制链接]
发表于 2021-3-30 21:17 | 显示全部楼层 |阅读模式
  • solidWorks建模

    solidWorks建模
        SolidWorks建模
  • 耗时一周制造出来了

    耗时一周制造出来了
       花了一周时间做出来了
  • 硬件 arduino uno+2个中继电+一个串口屏

    硬件 arduino uno+2个中继电+一个串口屏
      硬件部分 arduino uno+ 2个中间继电器+1个HMI 串口屏+220V 带调试器电机
  • HMI 主页面参数1

    HMI 主页面参数1
  • HMI 主页面参数2

    HMI 主页面参数2
    HMI 串口屏设置参数1
  • HMI 上电执行参数

    HMI 上电执行参数
    HMI 串口屏设置参数2
  • HMI 输入页面

    HMI 输入页面
    HMI 串口屏设置参数3
  • arduino 代码  Serial.Event 是伪中断 程序用的轮询 有好的代码 欢迎大神指教
    1. //淘晶驰串口屏幕上位机 arduino 下位机 串口控制IO 实现自动焊接-20210325 西代
    2. String comdata = "";
    3. int i=0;
    4. String ss_str="";
    5. String ms_str="";
    6. void revece_data(void);       //接受串口数据
    7. void test_data(void);         //执行串口数据
    8. void setup() {

    9.      pinMode(13, OUTPUT);//数字IO13--控制继电器及电机工作
    10.      pinMode(12, OUTPUT);//数字IO12--控制继电器及焊枪开关工作
    11.      digitalWrite(13, LOW);//停止电机
    12.      digitalWrite(12, LOW);//停止焊机
    13.      Serial.begin(9600);
    14. }
    15. void loop()
    16. {
    17.    revece_data();

    18.   if(comdata.length()>0)
    19.     {
    20.       Serial.println(comdata);
    21.       test_data();
    22.    
    23.    while(Serial.read()>=0){} //清空串口缓存           
    24. }

    25. }

    26. void test_data(void) //执行串口命令
    27. {      
    28.        i=comdata.indexOf('A');
    29.        ss_str=comdata.substring(i+1,comdata.length());
    30.        ms_str=comdata.substring(0,i);
    31.        Serial.println(ss_str.toInt()*1000);
    32.        Serial.println(ms_str.toInt()*1000);
    33.        digitalWrite(12, HIGH);//启动焊机
    34.        delay(ms_str.toInt()*1000);//启弧时间结束
    35.        digitalWrite(13, HIGH);//启动电机
    36.        int ys=ss_str.toInt();
    37.        //delay(ss_str.toInt()*1000);
    38.        comdata="";
    39.        while (ys>0)//串口轮询
    40.        {   
    41.         revece_data();
    42.         Serial.println(comdata);
    43.         if(comdata=="A")//触摸屏串口stop停止启动电机
    44.                 {
    45.                   digitalWrite(13, LOW);//停止启动电机
    46.                   Serial.println("OFF MO-TO");
    47.                   digitalWrite(12, LOW);
    48.                   Serial.println("OFF H-J");
    49.                   comdata="";
    50.                   break;
    51.                  }
    52.           ys=ys-1  ;   
    53.          delay(1000);
    54.        }      
    55.        digitalWrite(13, LOW);//停止电机
    56.        digitalWrite(12, LOW);//停止焊机
    57.        i=0;
    58.        ss_str="";
    59.        ms_str="";
    60.        comdata = "";
    61. }


    62. void revece_data()//接受串口数据 comdata
    63. {
    64.   while (Serial.available())
    65.   {
    66.     //获取新的字节:
    67.     char inChar = (char)Serial.read();
    68.     //将它添加到inputString:
    69.   
    70.     comdata += inChar ;
    71.     delay(2);
    72.   
    73.   }
    74. }
    复制代码


发表于 2021-3-31 11:51 | 显示全部楼层
这种场合用这些模块 要注意做好抗干扰
发表于 2021-5-9 06:58 | 显示全部楼层
:lo楼主威武!!!
发表于 2022-1-21 15:45 | 显示全部楼层
上面的界面是串口屏上的界面?手摇调节角度?电机是普通电机?电机调速怎么实现?
发表于 2022-1-23 08:29 | 显示全部楼层
老铁,你这种是什么焊机?是否有采用脉冲?我也想把普通的焊接改成那种带脉冲的,目前还在思考当中。。。
发表于 2022-1-24 15:30 | 显示全部楼层
脉冲是焊机自带的功能吧,焊机不带脉冲的话只能用连续点焊来实现
发表于 2022-9-9 12:58 | 显示全部楼层
牛逼胆子大的。串口屏界面再优化下就好了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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