變更夾爪形狀,並在夾頭下方新增連桿,加大夾持穩定度,開了槽可安裝極限開關,安裝點還沒畫,夾持面向內凹了1mm,夾持件不至於在夾持過程中由夾口脫落。

新增夾頭馬達的控制程式,暫時固定正轉90度,或許會改。

夾爪

整體圖

加上底座馬達控制程式

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <Servo.h>

Servo myservo;
Servo myservo2;
Servo myservo3;
Servo myservo4;

void setup() 
{ 
  Serial.begin(9600);

  myservo.attach(9, 500, 2500); // 修正脈衝寬度範圍
  myservo2.attach(10, 500, 2500);// 修正脈衝寬度範圍
  myservo3.attach(10, 500, 2400);
  myservo4.attach(10, 500, 2500);
}

void loop() 
{ 
    myservo.write(0);
    myservo2.write(0); 
    myservo3.write(0);
    myservo4.write(0); 
    int d;
    int e;
    if(Serial.available()){
      d = Serial.parseInt();
      Serial.println(d);  
      if(0 <= d && d <= 2500){
      delay(3000);
      for(int i = 500; i <= d; i+=10){
        myservo.writeMicroseconds(i); // 直接以脈衝寬度控制
        myservo2.writeMicroseconds(i);
        myservo3.writeMicroseconds(1500);
        delay(10);
      }
      delay(3000);
      for(int i = 500; i <= 1500 ; i+=10){  //夾爪動作
      myservo4.writeMicroseconds(i);
        delay(10);
      }
      delay(1000);
      for(int i = d; i >= 500; i-=10){
        myservo.writeMicroseconds(i);
        myservo2.writeMicroseconds(i);
        myservo3.writeMicroseconds(1500);
        delay(10);
      }
       delay(1000);
       for(int i = 1500 ; i >= 500; i-=10){   //夾爪動作
        myservo4.writeMicroseconds(i);
        delay(10);
      }
      }
    }
}

結語:

手臂剩下列印組裝就可以完成,但以目前馬達的力量沒有熱床八成沒辦法下料。


Comments

comments powered by Disqus