• 机械臂控制程序


    本课题来源于陈安老师的嵌入式的实践课程,使用现有的六轴机械手,采用蓝牙通信技术实现手机和六轴机械手的无线通信,编写相应的程序,通过树莓派烧写程序到arduino板卡中,通过手机客户端无线控制机械手运动。可以控制机械臂的运动,停止,加速,减速运动等

    #include<Servo.h>

    Servo myservo3;

    Servo myservo5;

    Servo myservo6;

    Servo myservo9;

    Servo myservo10;

    Servo myservo11;

    void serialtest(){

    if (Serival.available())

    {

      char a=Serial.read();

      if(a=='1')

      {

              int pos = 90;

        for(pos=10;pos<=170;pos+=1)

        {

        myservo9.write(pos);

        delay(15);

                  }

        

                 for(pos=170;pos>=10;pos-=1)

        {

        myservo9.write(pos);

        delay(15);

                  }

           }

      

    if(a=='2')

      {

              int pos = 90;

        for(pos=10;pos<=170;pos+=1)

        {

        myservo3.write(pos);

        delay(15);

                  }

        

                 for(pos=170;pos>=10;pos-=1)

        {

        myservo3.write(pos);

        delay(15);

                  }

           }

      

    if(a=='3')

      {

              int pos = 90;

        for(pos=10;pos<=170;pos+=1)

        {

        myservo10.write(pos);

        delay(15);

                  }

        

                 for(pos=170;pos>=10;pos-=1)

        {

        myservo10.write(pos);

        delay(15);

                  }

           }

      

    if(a=='4')

      {

              int pos = 90;

        for(pos=10;pos<=170;pos+=1)

        {

        myservo11.write(pos);

        delay(15);

                  }

        

                 for(pos=170;pos>=10;pos-=1)

        {

        myservo11.write(pos);

        delay(15);

                  }

           }

      if(a=='5')

      {

      int pos =90;

      for(pos=10;pos<=170;pos+=1)

        {

          myservo3.write(pos);

          myservo9.write(pos);

          myservo10.write(pos);

          myservo11.write(pos);

          delay(20);

        }

      }

      if(a=='4')

      {

        myservo3.write(90);

        myservo5.write(90);

        myservo6.write(90);

        myservo9.write(90);

                  myservo10.write(90);

        myservo11.write(90);

      }

    }

    }

    void setup(){

      myservo3.attach(3);

      myservo3.attach(5);

      myservo3.attach(6);

      myservo3.attach(9);

      myservo3.attach(10);

      myservo3.attach(11);

      Servial.begian(9600);

      }

      void loop(){

      serialtest();

      for(pos=10;pos<=170;pos+=1)

      {

        myservo.write(pos);

        delay(15);

      }

      

      for(pos=180;pos>=0;pos-=1)

      {

        myservo.write(pos);

        delay(15);

      }

    }

  • 相关阅读:
    <<信息学奥赛一本通>> 昆虫养殖 题解
    C++ primer 第七章 练习7.35 类作用域练习
    C++ primer 第六章 练习6.56 函数指针练习
    P1145 约瑟夫
    C++ 查看auto delctype 后变量的类型。(小技巧)
    Educational Codeforces Round 24 题解
    HDU 5279 分治NTT 图的计数
    BZOJ 3473
    BZOJ 3514 LCT+主席树
    看无可看 分治FFT+特征值方程
  • 原文地址:https://www.cnblogs.com/123talents/p/7458411.html
Copyright © 2020-2023  润新知