Բովանդակություն:
- Քայլ 1: Նախագծի ակնարկ
- Քայլ 2: Սխեմաներ
- Քայլ 3: PS2 վերահսկիչի դիագրամ
- Քայլ 4: Կարգավորեք Zio մոդուլների միացումը
- Քայլ 5. Միացրեք Robotic Arm Servo- ն Zio 16 Servo Controller- ին
- Քայլ 6. Միացրեք ձեր 16 Servo- ն DC/DC Booster- ին և դրեք այն 6.0 Վ լարման վրա:
- Քայլ 7: Միացրեք Zuino M Uno- ն Zio 16 Servo Controller- ին
- Քայլ 8. Uno- ի միացում PS2 ընդունիչին
- Քայլ 9. Robotic Arm- ի ծածկագիրը
- Քայլ 10: Գործարկեք ձեր ծածկագիրը
- Քայլ 11: Կոդի բացատրություն
Video: Robotic Arm with Zio Modules Մաս 2: 11 Քայլեր
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:48
Այսօրվա ձեռնարկում մենք կօգտագործենք բոլոր 4 սերվերը և PS2 անլար վերահսկիչը ՝ ռոբոտային թևը վերահսկելու համար:
Այս բլոգային գրառումը Zio Robotics Series- ի մի մասն է:
Ներածություն
Մեր նախորդ բլոգում մենք տեղադրեցինք 1 -ին մասի ձեռնարկը, թե ինչպես կառավարել Robotic Arm- ը ՝ օգտագործելով Zio մոդուլները: Մաս 1 -ը հիմնականում կենտրոնացած էր ձեր Robotic Arm's Claw- ի բաց և փակման ավտոմատ կառավարման վրա:
Այսօրվա ձեռնարկում մենք մի փոքր կբարձրացնենք այն ՝ ներառելով PS2 Wireless վերահսկիչ ՝ Robotic Arm- ը կառավարելու համար: Այս նախագծի համար մենք կօգտագործենք 4 սպասարկում:
Քայլ 1: Նախագծի ակնարկ
Դժվարության մակարդակ
Ioիո Պադավան
Օգտակար ռեսուրսներ
Դուք պետք է ունենաք հիմնական պատկերացում, թե ինչպես տեղադրել Zio զարգացման տախտակները: Այս ձեռնարկում մենք ենթադրում ենք, որ ձեր զարգացման տախտակն արդեն կազմաձևված է և պատրաստ է տեղադրման: Եթե դեռ չեք կազմաձևել ձեր խորհուրդը, սկսելու համար ծանոթացեք ստորև բերված մեր Zio Qwiic Start Guide ձեռնարկին:
Zio Zuino M UNO Qwiic մեկնարկի ուղեցույց
Քայլ 2: Սխեմաներ
Ահա Robotic Arm Part 2 նախագծի միացման սխեմաները, ինչպես նաև PS2 Controller դիագրամը, որն անհրաժեշտ է ձեր կոդավորման մասի համար:
Քայլ 3: PS2 վերահսկիչի դիագրամ
Քայլ 4: Կարգավորեք Zio մոդուլների միացումը
Ստորև բերված է մեր Zio մոդուլների միացումը Robotic Arm- ի հետ: Բոլոր մոդուլները միմյանց միացնելը բավականին հեշտ է և դրա ստեղծումը չի տևի ավելի քան 10 րոպե:
Քայլ 5. Միացրեք Robotic Arm Servo- ն Zio 16 Servo Controller- ին
Քայլ 6. Միացրեք ձեր 16 Servo- ն DC/DC Booster- ին և դրեք այն 6.0 Վ լարման վրա:
Մենք օգտագործում ենք DC/DC Booster ՝ մարտկոցի մատակարարման լարումը բարձրացնելու և կարգավորելու համար 6.0:
Օգտագործեք պոտենցիոմետրը DC Booster- ում `լարումը կարգավորելու համար, մինչև ստանաք 6.0: Սեղմեք Մուտք/Ելք կոճակը, մինչև էկրանը ցույց տա 6.0: Լարումը կարգավորելու համար անհրաժեշտ է նախ սնուցել հոսանք (3.7 Վ մարտկոց) ձեր DC/DC ուժեղացուցիչին:
Քայլ 7: Միացրեք Zuino M Uno- ն Zio 16 Servo Controller- ին
Qwiic- ը Zuino M Uno- ն միացրեք Zio Servo կարգավորիչին qwiic մալուխով:
Քայլ 8. Uno- ի միացում PS2 ընդունիչին
Ահա միացումների կապի սխեման: Այս մասի համար ձեզ հարկավոր է 5 արականից իգական ցատկող լարեր:
Քայլ 9. Robotic Arm- ի ծածկագիրը
Մենք կօգտագործենք PS2 Arduino գրադարանը ՝ կոդավորելու մեր PS2 անլար վերահսկիչը ՝ մեր Robotic Arm- ի հետ աշխատելու համար: Այս Robotic Arm Part 2 նախագծի սկզբնական կոդը կարող եք գտնել և ներբեռնել մեր Github էջում:
Ներբեռնեք և տեղադրեք հետևյալ գրադարանները և պահեք այն ձեր տեղական Arduino IDE գրադարանների պանակում.
- Adafruit PWM Servo վարորդների գրադարան
- PS2 Arduino գրադարան
Գրադարանները տեղադրելու համար բացեք ձեր Arduino IDE- ն, անցեք «Էսքիզ» ներդիրին, ընտրեք Ներառել գրադարանը -> Ավելացնել: ZIP գրադարան: Ընտրեք վերը նշված գրադարանները, որոնք ներառվելու են ձեր IDE- ում:
Arduino- ն ունի հարմար ուղեցույց, թե ինչպես տեղադրել գրադարաններ ձեր Arduino IDE- ին: Ստուգեք դրանք այստեղ:
Քայլ 10: Գործարկեք ձեր ծածկագիրը
Բացեք Arduino IDE- ն: Ֆայլեր> Օրինակներ> PS2_Arduino_Library, ընտրեք PS2X_Servo
Նշում. Նախքան PS2 Controller- ով ձեր Robotic թևը կառավարելը, ստուգեք հետևյալ քայլերը. Միացրեք ձեր PS2 վերահսկիչը: Ստուգեք, որ ռեժիմի LED լույսը վառվի: Եթե դա այդպես չէ, սեղմեք ռեժիմի կոճակը ձեր վերահսկիչի վրա: Վերոնշյալը կատարելուց հետո դուք պետք է սեղմեք ձեր Zuino M Uno- ի վերակայման կոճակը, որպեսզի այն կարդա ձեր վերահսկիչի կարգավորումները: Ձեր Robotic Arm- ը շարժելու համար հարկավոր է սեղմել L1- ը և Joystick- ը:
- Ձախ ջոյստիկը վերահսկում է Ձեռքի թեքումը դեպի վեր կամ վար
- Right Joystick- ը վերահսկում է ճանկը `բացել կամ փակել և ճանկը պտտել ձախ կամ աջ:
Քայլ 11: Կոդի բացատրություն
PS2X Arduino գրադարանի օգտագործումը պարզ է, պահանջում է միայն նախաստորագրում, կարգավորում և այնուհետև ընթերցման հրաման:
Ձեր PS2 վերահսկիչի համար ձեր Uno- ի հետ կապ հաստատելու համար ստորև բերված են այն կոճակները, որոնք պետք է սահմանեք ձեր ծածկագրում.
/********************************************** ****************սահմանել կապում ՝ կապված PS2 վերահսկիչին ՝* - 1e սյունակ ՝ օրիգինալ* - 2e սյունակ ՝ Ստեֆ: *Փին համարները փոխարինեք նրանցից, որոնք օգտագործում եք **************************************** **********************/#սահմանել PS2_DAT 13 // 14#սահմանել PS2_CMD 11 // 15#սահմանել PS2_SEL 10 // 16#սահմանել PS2_CLK 12 // 17
Մենք կապերը փոխարինել ենք այն քորոցներով, որոնք օգտագործում ենք մեր Uno- ին միանալու համար, ինչպես նշված է վերևում տեղադրված Pin Diagram- ում:
/********************************************* ***************** ընտրել PS2 վերահսկիչի ռեժիմներ ՝* - ճնշումներ = հրում կոճակների անալոգային ընթերցում* - դղրդյուն = շարժիչային բզզոց*յուրաքանչյուր ռեժիմի ընտրության համար տողերի 1 մեկնաբանություն ** *********************************************** ************///#սահմանել ճնշումները ճշմարիտ#սահմանել ճնշումները կեղծ //#սահմանել դղրդյուն ճշմարիտ#սահմանել թնդալ կեղծ
Այստեղ մենք սահմանեցինք PS2 ռեժիմը ճնշումների և աղմուկի համար ՝ որպես կեղծ: Մենք մեկնաբանեցինք դրանք, որոնք մենք չենք օգտագործում:
Մենք կօգտագործենք միայն Controller's Joystick հրամանը և L1- ը ՝ վերահսկելու մեր Robotic Arm- ի շարժումը:
void loop () {/* Դուք պետք է կարդաք Gamepad ՝ նոր արժեքներ ստանալու և թրթռման արժեքներ սահմանելու համար ps2x.read_gamepad (փոքր շարժիչ միացված/անջատված, ավելի մեծ շարժիչի ուժգնություն 0-255-ից), եթե թնդյունը միացնելու դեպքում օգտագործեք ps2x.read_gamepad (); առանց արժեքների Դուք պետք է սա առնվազն մեկ վայրկյանում զանգահարեք*/if (error == 1) // բաց թողնել օղակը, եթե ոչ մի վերահսկիչ վերադարձ չի գտել. else {// DualShock Controller ps2x.read_gamepad (կեղծ, թրթռալ); // կարդալ վերահսկիչ և մեծ շարժիչը պտտել «թրթռալ» արագությամբ, եթե (ps2x. Button (PSB_START)) // կլինի UEԻՇՏ, քանի դեռ կոճակը սեղմված է Serial.println («Սկիզբը պահվում է»); if (ps2x. Button (PSB_SELECT)) Serial.println ("Ընտրությունը պահվում է"); թրթռալ = ps2x. Անալոգային (PSAB_CROSS); // սա կդնի շարժիչի մեծ թրթռման արագությունը ՝ կախված այն բանից, թե որքանով եք սեղմում կապույտ (X) կոճակը, եթե (ps2x. Button (PSB_L1) || ps2x. Button (PSB_R1)) {// տպել ձողերի արժեքները, եթե դրանցից մեկը TRUE RY_Value է: = ps2x. Անալոգային (PSS_RY); RX_Value = ps2x. Անալոգային (PSS_RX); LY_Value = ps2x. Անալոգային (PSS_LY); LX_Value = ps2x. Analog (PSS_LX); Serial.print ("Կպչուն արժեքներ."); Serial.print (RX_Value); Serial.print (""); Serial.print (RY_Value); Serial.print (""); Serial.print (LY_Value); Serial.print (""); Serial.println (LX_Value);
Ստորև բերված կոդը այն վայրն է, որտեղ մենք կոդավորում ենք մեր ռոբոտային թևը կառավարող մեր սերվերը, որոնք մենք ներառում ենք ps2x.button (PSB_L1) գործառույթի կանչում || ps2x. կոճակ (PSB_R1):
Robոյստիկի հետ միասին պետք է սեղմել L1 կամ R1 կոճակը ՝ ձեր Robotic Arm- ը կառավարելու համար:
Ձախ մասի կառավարման ձախ և 2 -րդ սպասարկող սպասարկիչները `համապատասխանաբար վերահսկում են թևի վերևի և ներքևի թեքումը, մինչդեռ աջ ջոյստիկը վերահսկում է Robotic Arm's claw 0 և 1 ծառայությունները` բացելու կամ փակելու և ձախ կամ աջ պտտելու համար:
SERVO 0, 1 - ճանկ SERVO 2, 3 - Արմ
Այս հատվածում կարող եք փոփոխություններ կատարել արժեքների վրա ՝ ձեր Robotic Arm անկյունի աստիճանը վերահսկելու համար.
pulselen0 = քարտեզ (RY_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen1 = քարտեզ (RX_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen2 = քարտեզ (LY_Value, 0, 127, SERVOMIN2, SERVOMAX2); pulselen3 = քարտեզ (LX_Value, 0, 255, SERVOMIN3, SERVOMAX3);
Խորհուրդ ենք տալիս:
Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3: 7 քայլեր
Հեշտ Շատ ցածր էներգիայի BLE Arduino- ում Մաս 2 - peratերմաստիճանի/խոնավության մոնիտոր - Rev 3. Թարմացում. 23 նոյեմբերի, 2020 թ. - 2 x AAA մարտկոցների առաջին փոխարինում 2019 թ. Հունվարի 15 -ից, այսինքն `22 ամիս 2xAAA ալկալային համար: Թարմացում. 7 ապրիլի, 2019 թ. lp_BLE_TempHumidity, ավելացնում է Ամսաթիվ/ժամ գծագրեր, օգտագործելով pfodApp V3.0.362+և ավտոմատ ճնշում, երբ
Arduino Portable Workbench Մաս 3.11 Քայլեր
Arduino Portable Workbench Մաս 3. Եթե դուք դիտել եք 1, 2 և 2B մասերը, ապա մինչ այժմ այս նախագծում շատ Arduino չի եղել, բայց ընդամենը մի քանի տախտակի լարեր և այլն այն չէ, ինչի մասին է դա և ենթակառուցվածքը: պետք է կառուցվի մինչև մնացած աշխատանքները: Սա էլեկտրոնիկա է և Ա
Robotic Arm with Zio Modules Մաս 3: 4 քայլ
Robotic Arm With Zio Modules Մաս 3. Այս բլոգային գրառումը Zio Robotics Series- ի մի մասն է: Ներածություն Մեր նախորդ բլոգում մենք տեղադրեցինք 1 -ին և 2 -րդ մասի ձեռնարկը, թե ինչպես վերահսկել Robotic Arm- ը `օգտագործելով Zio մոդուլները: Մաս 1 -ը հիմնականում կենտրոնացած էր ձեր Robotic Arm's Claw t
Կառավարեք ռոբոտացված ձեռքը Zio մոդուլներով Մաս 1: 8 քայլեր
Կառավարեք ռոբոտային ձեռքը Zio մոդուլներով Մաս 1. Այս բլոգային գրառումը Zio Robotics շարքի մի մասն է: Ներածություն Այս ձեռնարկում մենք կկառուցենք նախագիծ, որտեղ մենք կօգտագործենք Zio մոդուլները ՝ վերահսկելու Robotic Arm- ը: Այս նախագիծը կսովորեցնի ձեզ, թե ինչպես անել, որ ձեր Robotic Arm ճանկը բացվի և փակվի: Այս ն
ROS MoveIt Robotic Arm Մաս 2. Robot Controller: 6 Steps
ROS MoveIt Robotic Arm Մաս 2: Robot Controller ՝ https://github.com/AIWintermuteAI/ros-moveit-arm.git Հոդվածի նախորդ մասում մենք ստեղծել ենք URDF և XACRO ֆայլեր մեր ռոբոտացված թևի համար և գործարկել ենք RVIZ- ը ռոբոտացված ձեռքը մոդելավորված միջավայրում: Այս անգամ մենք դա կանենք ռեալի հետ