廢柴小六足機器人 DIY 課程

324
DMP Electronics Inc. (瞻營全電子) [email protected]

Transcript of 廢柴小六足機器人 DIY 課程

  • DMP Electronics Inc. () [email protected]

  • DIY

    DIY

    Stpe1 Step2 Step3 Step4 Step5

  • RC

  • DMP RS-1270 KONDO KRS-788HV

    DMP RS-0263

    TowerPro SG-90

    Scanner STL-9894CTG

    KONDO KRS-2552HV

    Robotics MX-28

    Robotics AX-12

    SYS-214050

  • RC (1/2) RC Servo Radio Control ServoRadio Control

    Servo

    Servo

  • RC (2/2) RC Servo Servo

  • RC

    Arduino

  • ()

    ()

  • RC RC

    PWM

  • RC PWM

    AI

    Robotics () TTL SerialRS485 KONDO () PWMTTL Serial

    () PWM () PWM

    TOWERPRO () PWM

  • PWM (1/2) (Pulse Width Modulation)

    PWM

  • PWM (2/2)

    duty , HIGH

    period HIGHLOW

    HIGH LOW HIGH LOW HIGH LOW

  • PWM (1/2) PWM RC

    1000 / 1500 / 2000 us PWM

    : 0 / 90 /180

    20ms

  • PWM (2/2) RC PWM

    0 700us180 2300us

  • RC (1/6) RC

  • RC (2/6)

  • RC (3/6) RC

  • RC (4/6)

  • RC (5/6) RC

  • RC (6/6) RC

  • 86Duino

  • 86Duino

    86Duino ONE 86Duino Zero 86Duino EduCake

  • 86Duino (1/2) 32-bit x86 SoC Arduino UNO

    x86 Arduino

    Arduino

    Arduino API

    33 Arduino

    Made In TaiwanCPU Made In Taiwan

  • 86Duino (2/2)

    86Duino ONE 86Duino Zero

    86Duino EduCake

  • RC 86Duino Zero ?

  • 86Duino Zero Zero RC

    RC

    Arduino shields

  • Arduino Sensor Shlied

    Arduino Sensor Shlied 86Duino Zero

    +

  • 86Duino Zero +

    Arduino Sensor shield RC Servo SG90 x 3

  • RC Servo SG90

    86Duino Zero

  • 2.54mm

  • Zero 5V

  • DIY

  • DIY DIY

    Stpe1 Step2 Step3 Step4 Step5

  • DIY DIY

    Stpe1 Step2 Step3 Step4 Step5

  • 1. 2.

    3. USB

    PS2

  • (1)

    ()

    ()

    ()

  • (2)

    ()

    ()

    ()

    (86Duino Zero)

  • (3)

    (86Duino Zero)

  • DIY DIY

    Stpe1 Step2 Step3 Step4 Step5

  • (1/8) 3

    2 35

    1 38

  • (2/8) 1

  • (3/8) 2

  • (4/8) 4

  • (5/8) 5

    3

    1

    1

  • (6/8) 4

    2

  • (7/8) 1

    1

  • (8/8) 4

  • (1/3) SG90 3 ()

  • (2/3) 7.4V 1

  • (3/3) 86Duino Zero 1

    USB

  • 2

    1

    5

    6

    7

    8 9

    4

    3

    10 11

    12 13

    1. 2. 3. 4. 5. 6. 7. 8. / 9. 10. 11. 12. 13.

  • DIY DIY DIY

    Stpe1 Step2 Step3 Step4 Step5

  • Step 1.0 3

  • Step 1 ()

    2 1

  • 2

    1

    1

    2

  • Step 1.1 1

    ()

  • 90 90

  • Step 1.2 2

    90 90

  • Step 1.3 M

    ~ 160

    ~ 80 ~ 80

  • (10 )

  • Step 1.4

  • 2 1

    3

    3

    12

  • 2

  • 1 2

  • Step 1.5

  • Step 1.6 1

  • 3 ~ 5 ,

    1

    1

  • Step 1.7 2 1 2

    2

  • Step 1.8

  • / -

  • (30 )

  • DIY DIY DIY

    Stpe1 Step2 Step3 Step4 Step5

  • Step 2.0 1

    1

  • Step 2 ()

  • /

  • (1) (2)

  • Step 2.1

  • ()

  • ( 1/3 )

  • 90

  • 1 ~ 4 4

    Step 2.2

  • 4

    12

    12 34

  • 1 2 20

    20

    1

    2

  • 3 4 20

    20

    3

    4

  • (15 )

  • DIY DIY DIY

    Stpe1 Step2 Step3 Step4 Step5

  • Step 3.0 3

  • Step 3 ()

  • 3

    Step 2 1

  • Step 3.1

    -

  • Step 3.2 Step 2 (

    )

  • Step 3.3

  • 2

  • 90

    1:

    2:

  • 90

    1:

    2:

  • 3

  • 1 ~ 2

    30

  • (15 )

  • DIY DIY DIY

    Stpe1 Step2 Step3 Step4 Step5

  • Step 4.0 4 2

    5

    86Duino Zero

  • Step 4

  • 86Duino Zero

    Step 3 Step 2

  • Step 4.1 86Duino Zero 2 86Duino Zero

  • 2

  • 86Duino Zero

  • 2 86Duino

  • 86Duino

    5V GND

  • 86Duino 86Duino GND GND

    86Duino 5V 5V

    1 86Duino 44 S1

    2 86Duino 43 S2

    3 86Duino 42 S3

  • 86Duino Zero

    42

    43 44 GND 5V

  • Step 4.2

    3 2 1

    1

    2

    3

  • Step 4.3 2

    ()

  • Step 3

  • Step 4.4

  • 86Duino

  • (10 )

  • DIY DIY DIY

    Stpe1 Step2 Step3 Step4 Step5

  • Step 5.0 Step 5

  • 3

    2

    3

  • Step 5.0

    180

  • 86Duino duty 1500us PWM ( 90 )

  • Step 5.1 sketch

    http://www.roboard.com/temp/servo.zip

    http://www.roboard.com/temp/servo.zip

  • #include // Servo86 Servo myservo1; Servo myservo2; // Servo Servo myservo3; void setup() { myservo1.attach(42); // Servo myservo2.attach(43); myservo3.attach(44); myservo1.write(1500); // 1500us PWM myservo2.write(1500); myservo3.write(1500); } void loop() {}

  • Sketch 86Duino 86Duino Coding 210

    http://www.86duino.com/86Duino_IDE/86Duino_Coding_210_WIN.zip

    http://www.86duino.com/86Duino_IDE/86Duino_Coding_210_WIN.ziphttp://www.86duino.com/86Duino_IDE/86Duino_Coding_210_WIN.zip

  • USB 86Duino

    86Duino, http://www.86duino.com/index.php?p=4220&lang=TW

    PC

    USB

    http://www.86duino.com/index.php?p=4220&lang=TW

  • 86Duino 86Duino Zero/One/EduCake COMXX Windows

  • 86Duino 1. 86Duino Coding IDE

    2. > > 86Duino Zero

    3. > COM port > (86Duino )

    4. > ... > servo.ino

  • 1.

    2.

    3.

  • Uploading the binary sketch Done

  • USB

    USB

    USB

  • 3

    2 1

  • Step 5.3 3

  • 3

  • (15 )

  • 8.2V ~ 8.4V

    SG-90 4.8V ~ 7.2 V SG-90 () 7.2V

  • ()

    20 40W ( 20 )

    DC to DC

    DC-DC

  • 5V 86Duino Zero VIN

  • ** !!

  • DMP Electronics Inc. () [email protected]

  • Arduino/86Duino

    86ME

    86ME

    86ME Mk-IV

  • Arduino/86Duino

  • Arduino : Servo attach() - Servo pin

    write() - Servo 0 ~ 180

    writeMicroseconds()- PWM duty Servo

    read() - Servo

    attached() - Servo pin attach

    detach() - Servo pin

    ** Servo Arduino

  • #include Servo myservo; void setup() { myservo.attach(9); myservo.write(900); delay(1000); myservo.write(2000); delay(1000); myservo.write(900); delay(1000); myservo.write(2000); } void loop() {}

    Demo

  • Servo : 86Duino Servo86

    45

    PWM Duty jitter

    Frame

  • #include Servo myservo; void setup() { myservo.attach(9); myservo.write(900); delay(1000); myservo.setVelocity(1100); myservo.write(2000); delay(1000); myservo.setVelocity(550); myservo.write(900); delay(2000); myservo.setVelocity(2200); myservo.write(2000); } void loop() {}

    Demo

  • PWM Duty (1/2) Arduino Servo PWM

    PWM duty (jitter)

    PWM channel 12 , Arduino Timer, Timer , PWM jitter

  • PWM Duty (2/2) Arduino PWM duty

    CPU

  • Arduino UNO , PWM

    +

    Arduino UNO

  • PWM RC Servo , servo

    RC Servo , PWM

    Arduino UNO

    +

    KONDO KRS4014 Servo

    Servo

  • Arduino 86Duino 1 servo pin, PWM duty

    PWM Duty (1/2)

    duty

    duty

    Arduino UNO 1000 us 1000.04 us 1006.42 us 6 ~ 7 us Arduino Leonardo

    1000 us 1000.04 us 1007.92 us 7 ~ 8 us

    Arduino DUE 1000 us 998.200 us 998.280 us 1 ~ 2 us Arduino Mega2560

    1000 us 1001.12 us 1008.87 us 8 ~ 9 us

    86Duino 1000 us 998.64 us 1001.1 us 1 ~ 2 us ** ** 86Duino PWM I/O pin , 0

  • Arduino DUE / Mega2560 86Duino 45 servo pins, pin PWM duty , :

    PWM Duty (2/2)

    duty

    duty

    Arduino DUE 1000 us 998.05 us 1004.68 us 2 ~ 5 us Arduino Mega2560

    1000 us 1001.09 us

    1076.96 us 1 ~ 77 us

    86Duino 1000 us 998.70 us 1001.31 us 1 ~ 2 us

    Arduino Servo 12 channels , 2 Timer , Timer jitter

  • (1/3)

  • (2/3)

  • (3/3) https://www.youtube.com/watch?v=oOgHzcrVG1s

    https://www.youtube.com/watch?v=oOgHzcrVG1s

  • Frame ()

    (Frame) Servo86

    Frame Pose

  • Frame 1 Frame 2 Frame 3 Frame 4 Frame 5

  • Frame

    Frame Frame1: 1500, 1300, 1200, 900, 1765, 1809, 1243, 1200,990, 754, 2000

    Frame2: 1340, 1200, 1543, 2178, 1222, 1456, 1723, 1111, 954, 1245

    Frame3: 1000, 2345, 2000, 800, 1200, 2019, 2430, 1432, 1270, 955, 1560

  • 86ME

  • 86ME Frame

    Servo86 86Duino

  • 86ME Frame

    otion frame

    homeframe frame frame

    homeframe

    offset homeframe

    offset

  • 86ME offset homeframe

    frame

    (motion) frame

    motion 86Duino sketch

  • 86ME Demo https://www.youtube.com/watch?v=LZhoCQ4E-N4

    https://www.youtube.com/watch?v=LZhoCQ4E-N4

  • 86ME

  • 86ME 1. 86ME

    http://www.86duino.com/index.php?page_id=8923&lang=TW

    2. 86ME

    3. Windows .NET Framework 3.5 86ME

    http://www.86duino.com/index.php?page_id=8923&lang=TWhttp://www.86duino.com/index.php?page_id=8923&lang=TW

  • 86ME 86Duino

    USB

    PC 86ME

    86ME

    86Duino

  • 86ME 86Duino USB 86Duino

  • 86ME 86Duino 1. 86Duino Coding IDE

    2. > > 86Duino Zero

    3. > COM port > (86Duino )

    4. > > Servo86 > MotionEditor

  • 86ME 86Duino Uploading the binary

    sketch Done

  • 86ME 86Duino IDE

    86ME

    86Duino Auto 86ME

    COM port COM port

  • (1/6)

  • (2/6)

  • (3/6) Robot

    Configuration 86Duino Pin Home Offset Robot Configuration

  • (4/6) 86Duino

    Offset Home

  • (5/6) 3

    86Duino Zero 4243 44 OtherServos

  • (6/6) Load Robot Picture

  • 1. 2.

    OK

  • OK 86ME Motion

    Name Motion

  • 86ME Frame

  • Frame (1/6) 1) Motion Name

    2) Add Motion MotionMotion Frame Action

  • Frame (2/6) 3) Action List

    4) Add new action at the first field

    5) Frame

    Frame

  • (3/6) Frame

    CH num PWM duty PWM duty

  • (4/6) PWM duty

  • (5/6)

    Robot Configuration

    CH

  • (6/6) Frame Sync

    PWM duty

  • Frame

    Frame

  • Motion

  • Frame (1/2) Frame

    Frame Motion

    1) Frame 0 Frame 1

    2) add new action at the next field -> frame

  • Frame (2/2) 4

  • (1/3) 4 Frame86ME

    Frame

  • (2/3) Frame

  • (3/3)

  • Flag Goto

    Flag & Goto

    Goto

    Flag

    Goto

    Flag

  • Flag Flag

    Flag Name

    Flag

  • Goto Goto

    Goto

  • Goto

    Target Flag Name Flag

    Enable Goto Goto

    Loop Infinitely

  • Loop Infinitely Number of

    loops Goto

    Number of loops 2 Goto Motion

  • Motion

  • Motion 1. Motion Add Motion

    2. Motion name

  • Motion

  • 86ME Motion

    Auto

    Keyboard

    Bluetooth

    PS2 Controller

  • Auto Always On

    Always Off

    Start Up

  • Keyboard Keyboard

    Key

    Type

    First Press

    Pressed

    Release

  • Bluetooth Bluetooth

    Key

    Used Port 86Duino Port

  • PS2 PS2

    Key

    Type Keyboard

    DATCMDATTCLK PS2 86Duino Pin

  • 86Duino

    sketch sketch 86DUino

  • 86Duino sketch

  • 86Duino Sketch (1/3) 86ME Motion 86Duino

    Sketch Sketch 86Duino Motion

    86ME Sketch

    Frame sketch

    Frame sketch

  • 86Duino Sketch (2/3) Frame sketch

    Offset 86Duino Frame sketch (.ino )

    Offset Frame SD sketch

  • 86Duino Sketch (3/3) Frame sketch ()

    sketch (.ino ) Offset Frame

    Offset Frame SD

  • 86ME

  • (1/4)

  • (2/4)

  • (3/4)

  • (4/4)

  • (1/4) Frame

    CH42 1750

    CH43 1300

    CH44 1750

  • (2/4) Frame

    CH42 1250

    CH43 1300

    CH44 1250

  • (3/4) Frame

    CH42 1250

    CH43 1700

    CH44 1250

  • (4/4) Frame

    CH42 1750

    CH43 1700

    CH44 1750

  • 4 frame

  • (1/4)

  • (2/4)

  • (3/4)

  • (4/4)

  • (1/4) Frame

    CH42 1750

    CH43 1700

    CH44 1250

  • (2/4) Frame

    CH42 1250

    CH43 1700

    CH44 1750

  • (3/4) Frame

    CH42 1250

    CH43 1300

    CH44 1750

  • (4/4) Frame

    CH42 1750

    CH43 1300

    CH44 1250

  • 4 frame

  • (1/4)

  • (2/4)

  • (3/4)

  • (4/4)

  • (1/4) Frame

    CH42 1750

    CH43 1300

    CH44 1250

  • (2/4) Frame

    CH42 1250

    CH43 1300

    CH44 1750

  • (3/4) Frame

    CH42 1250

    CH43 1700

    CH44 1750

  • (4/4) Frame

    CH42 1750

    CH43 1700

    CH44 1250

  • 4 frame

  • 86DuinoZero

    APP UART 86DuinoZero 86DuinoZero

  • 86Duino Zero

    UART

    PWM

    PWM

  • APP

    sketch

    sketch

    86ME

    86Duino IDE

    86DuinoZero

  • 86DuinoZero HC-06 HC-05 1 HC-06

  • HC-06 UART 4 VCCGND RXD TXD

    86DuinoZero Serial1 86DuinoZero HC-06

  • 5V GND

    RX1

    HC-06

  • HC-06 LED ( 0.2 ) HC-06

  • 86ME 1)

    forward

    2) Trigger 3) Bluetooth 4)

    APP U

    5) 86Duino Serial1

    1

    3 4

    5

    2

  • 86ME Sketch 86ME Generate 86Duino sketch (All

    in One 86Duino sketch

  • 86Duino IDE > ...

    86ME

  • 86Duino IDE 86Duino

  • APP Android

    Google Bluetooth Controller

    iOS

    APP store LightBlue Android Bluetooth Controller App iOS Bluetooth Controller App

  • Bluetooth Controller Set Keys

  • Key Name Data of Key

  • 86ME forward U

  • ScanAPP

  • HC-06APP

    Connect to HC-06

  • HC-06 LED !!

  • ?

    ?

  • ()

    A4

    2

    1

  • Thank You 86Duino Maker Day II

    DMP Electronics Inc. () [email protected]

    86Duino Maker Day IIDIY Mk-IV RC 4RC (1/2)RC (2/2)RC 9RC RC PWM (1/2)PWM (2/2) PWM (1/2) PWM (2/2)RC (1/6)RC (2/6)RC (3/6)RC (4/6)RC (5/6)RC (6/6) 86Duino 86Duino 86Duino (1/2)86Duino (2/2) RC 86Duino Zero ? 86Duino Zero 29 31 32 33 35DIY DIY DIY 40 (1) (2) (3) DIY 45 (1/8) (2/8) (3/8) (4/8) (5/8) (6/8) (7/8) (8/8) (1/3) (2/3) (3/3) 60 DIY Step 1.0 63 64 66Step 1.1 1 68 69Step 1.2 2Step 1.3 72Step 1.4 74 76 77Step 1.5 79Step 1.6 1 81 82 83 84 85Step 1.7 2 Step 1.8 88 89 91 DIY Step 2.0 94 96Step 2.1 98 99 100 101 102Step 2.2 104 105 106 107 108 DIY Step 3.0 111 113Step 3.1 115Step 3.2 117 118 119Step 3.3 121 122 123 125 127 DIY Step 4.0 130 132Step 4.1 86Duino Zero 134 135 136 137 138 139 140Step 4.2 142Step 4.3 144 145Step 4.4 147 148 DIY Step 5.0Step 5.0Step 5.1 Sketch 86Duino 157 158 159 160 86Duino 162 163 164 165 166 167Step 5.3 169 171 172 174 17686Duino Maker Day II Mk-IV Arduino/86Duino Arduino : Servo Servo : 86Duino Servo86 PWM Duty (1/2)PWM Duty (2/2) Arduino UNO , PWM PWM PWM Duty (1/2) PWM Duty (2/2) (1/3) (2/3) (3/3)Frame () 19686ME 86ME 86ME 86ME 86ME Demo 86ME 86ME 86ME 86Duino 86ME 86Duino 86ME 86Duino 207 86ME 86Duino 86ME (1/6) (2/6) (3/6) (4/6) (5/6) 215 (6/6) 217 86ME Frame Frame (1/6) Frame (2/6) (3/6) 223 (4/6) (5/6) 226 (6/6) Motion Frame (1/2) Frame (2/2) (1/3) (2/3) (3/3)FlagGoto 241 Motion MotionMotion AutoKeyboardBluetoothPS2 86Duino sketch 86Duino Sketch (1/3) 86Duino Sketch (2/3) 86Duino Sketch (3/3) 86ME (1/4) (2/4) (3/4) (4/4) (1/4) 265 (2/4) 267 (3/4) 269 (4/4) 271 (1/4) (2/4) (3/4) (4/4) (1/4) 279 (2/4) 281 (3/4) 283 (4/4) 285 (1/4) (2/4) (3/4) (4/4) (1/4) 293 (2/4) 295 (3/4) 297 (4/4) 299 301 30386DuinoZero 306 307 30886ME 86ME Sketch 312 APP 315 316 317 318 319 320Thank You