Агуулгын хүснэгт:
- Хангамж
- Алхам 1: шийдвэрлэх модуль
- Алхам 2: Тохируулах
- Алхам 3: Кодыг ачаална уу
- Алхам 4: Алхам 3: Хөгжилтэй байгаарай
Видео: Arduino Resolver Module: 4 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:02
Tinee9 шинэ модулийн хамт эргэн ирлээ. Энэ модулийг Resolver модуль гэж нэрлэдэг.
Мотор хянах ертөнцөд байрлалыг илрүүлэх янз бүрийн төрөл, арга байдаг. Эдгээр арга нь танхимын мэдрэгч, XY мэдрэгч, тогтоогч, RVDT, LVDT, хээрийн захирлууд, потенциометр гэх мэтийг агуулдаг. Эдгээр мэдрэгч бүрийг хэрхэн тохируулснаас хамааран та хамгийн сүүлийн байрлалыг санах ойд хадгалж үлдэхгүйгээр өөрийн үнэмлэхүй байрлалыг тодорхойлж болно..
Миний ашиглаж буй модулийг RVDT, LVDT, Resolver -ийн демодуляцийг хийхэд ашиглаж болох боловч өнөөгийн зорилгоор шийдвэрлэх хэрэгслийн загварыг өөрчлөх болно.
Техникийн ойлголт: Шинжээчийн түвшин
Залгаад тоглуулах заавар: Дунд түвшин
Хангамж
1: Ардуино Нано
2: Resolver Module
3: Талхны самбар
4: 9.0 вольтын зай эсвэл NScope
5: Шийдвэрлэгч
6: 10х Талхны самбар Jumper Wires
Алхам 1: шийдвэрлэх модуль
Моторыг солихын тулд моторыг загварчлах, тэг цэгийг давахгүй бол үнэмлэхүй байр суурийг олж авах, мотороос хурдыг авах боломжтой хэд хэдэн зүйл байдаг.
Тэдгээрийг хамгийн их ашигладаг байсныг би аэрерон, жолоодлого, пуужингийн сэрвээ эсвэл камерын удирдлагад ашигладаг.
Тэд тогоо эсвэл танхимын мэдрэгчээс арай илүү үнэтэй байдаг боловч танд гайхалтай нарийвчлалыг өгдөг.
Алхам 2: Тохируулах
1: Эхлээд та arduino наногоо талхны тавцан дээр тавих хэрэгтэй болно
2: Та Arduino дээрх 5V зүүг +3V3 зүү ба 5V зүүтэй холбох ёстой
3: Arduino дээрх RTN -ийг Resolver Module дээрх RTN -тэй холбоно уу
4: Arduino дээрх D9 -ийг Resolver модулийн PWM -тэй холбоно уу
5: Arduino дээрх A0 -ийг Resolver Module дээрх MCU_COS+ -тэй холбоно уу
6: Arduino дээрх A1 -ийг Resolver Module дээрх MCU_SIN+ -тэй холбоно уу
7: Resolver EX+ утсыг Resolver Module дээрх EX+ руу холбоно уу
8: Resolver EX утсыг Resolver Module дээрх EX- руу холбоно уу
9: Resolver COS+ утсыг Resolver Module дээрх COS+ руу холбоно уу
10: Resolver RCOM -ийн 2 утсыг Resolver Module дээрх RCOM -тэй холбоно уу
11: Resolver SIN+ утсыг Resolver Module дээрх SIN+ руу холбоно уу
12: 9V батерейг RTN (-) ба VIN (+) -д холбоно уу.
13: Эсвэл Arduino дээр Nscope +5V -аас 5V хүртэл залгаад Nscope дээр RTN -ийг Arduino дээрх RTN руу холбоно уу.
14: Хамрах хүрээг компьютерт холбоно уу
15: Arduino -г компьютер дээрээ USB холбоно уу
Алхам 3: Кодыг ачаална уу
Доорх Arduino кодыг Arduino IDE дээрх ноорог дээрээ хуулж оруулна уу
Энэ кодын хийх зүйл бол PWM Resolver Module юм. Энэхүү модуль нь шийдвэрлэгчийг өдөөж, хоёрдогч ороомог дээр квадрат долгион үүсгэх болно. Sin+ ба Cos+ -ээс гарч буй дохио нь OPAMP-д дамжуулагдах бөгөөд энэ нь Wave-ийг төвлөрүүлж, гаралтыг 0-5Вольтын хооронд хэлбэлзүүлдэг.
Гэм+ ба Кос+ нь яг л тэдний хэлдэг шиг байдаг. Нүгэл нь Cos долгионтой харьцуулахад 90 градусын үе шаттай байна.
Тэд үе шатнаас 90 градусын зөрүүтэй байгаа тул бид шийдвэрлэх байрлалын зөв координатыг авахын тулд Atan2 (Cos, Sin) функцийг ашиглах хэрэгтэй.
Дараа нь Arduino 4 дээж авсны дараа -3.14 ба 3.14 хооронд хэлбэлзэх тусам -180 градус ба +180 градусын утгатай нулимна. Ийм учраас хэрэв та тогтоогчийг үнэмлэхүй байрлалд ашиглахыг хүсвэл зөвхөн -180 -аас 180 -ийн хооронд эргүүлэхгүй байх ёстой, эс тэгвээс та эргэлдэж, хөдөлгүүрийн цохилтын эхэн эсвэл төгсгөлд буцаж байна гэж бодох болно. Хэрэв та 3D принтерийн x эсвэл y тэнхлэгт шийдвэрлэх төхөөрөмж ашиглахаар шийдэж, 3D хэвлэгчийг замбараагүй болгоход хүрвэл энэ нь асуудал болно.
Тасалдал тасалдсан тохиолдолд кодыг арай илүү сайжруулж, PWM -ийг тасралтгүй хийх боломжтой байсан ч энэ нь энэ програмд хангалттай байх болно.int A = A0;
int B = A1; int pwm = 9; int c1 = 0; int c2 = 0; int c3 = 0; int c4 = 0; int c5 = 0; int c6 = 0; int s1 = 0; int s2 = 0; int s3 = 0; int s4 = 0; int s5 = 0; int s6 = 0; хөвөх гаралт = 0.00; int sin1 = 0; int cos1 = 0; int position_state = 1; int get_position = 0; void setup () {// нэг удаа ажиллуулахын тулд тохиргооны кодоо энд оруулна уу: pinMode (pwm, OUTPUT); Цуваа.begin (115200); }
void loop () {
хэрэв (get_position = 5) {cos1 = (c1+c2)-(c3+c4); sin1 = (s1+s2)-(s3+s4); гаралт = atan2 (cos1, sin1); c1 = 0; c2 = 0; c3 = 0; c4 = 0; s1 = 0; s2 = 0; s3 = 0; s4 = 0; Serial.print ("Албан тушаал:"); Serial.println (гаралт); get_position = 1; }
// давтан ажиллуулахын тулд үндсэн кодоо энд оруулна уу.
}
Алхам 4: Алхам 3: Хөгжилтэй байгаарай
Шийдвэр гаргагчийг эргүүлж, шийдэгч хэрхэн ажилладаг, энэ програмын модулийг ямар програм ашиглаж болохыг олж мэдээрэй.
Зөвлөмж болгож буй:
Piezoelectric Shock Tap Sensor Module ашиглан чичиргээг илрүүлэх: 6 алхам
Piezoelectric Shock Tap Sensor Module ашиглан чичиргээг илрүүлэх: Энэхүү гарын авлагад бид энгийн пьезоэлектрик мэдрэгч Vibration модуль болон Visuino ашиглан цохилтын чичиргээг хэрхэн илрүүлэх талаар сурах болно
Arduino Adafruit Servo Shield Power Module: 3 алхам
Arduino Adafruit Servo Shield Power Module: Энэхүү цахилгаан модуль нь Arduino Uno-д зориулагдсан бөгөөд Adafruit 16 сувгийн Servo Shield-тэй хослуулан бүтээсэн болно. Adafruit Servo Shield бол Arduino-д маш сайн нэмэлт юм. Гэхдээ энэ нь хоёр дахь, 5V цахилгаан хангамжийг шаарддаг. Энэ төхөөрөмжтэй бол танд 5В хүчдэл хэрэгтэй хэвээр байх болно
Lora Arduino Control Relay Module Circuit: 12 алхам
Lora Arduino Control Relay Module Circuit: Энэхүү Лора төсөлд бид LoRa Arduino реле хяналтын хэлхээний тусламжтайгаар өндөр хүчдэлийн төхөөрөмжийг хэрхэн удирдахыг харах болно. Энэхүү Arduino Lora төсөлд бид Reyax RYLR896 Lora модуль, Arduino, 12v реле модулийг ашиглан 5 гэр ахуйн цахилгаан хэрэгслийг удирдах болно
Arduino Uno ашиглан акустик левитаци Алхам алхам (8 алхам): 8 алхам
Arduino Uno-тай акустик Levitation Алхам алхамаар (8 алхам): хэт авианы дууны дамжуулагч L298N Dc эмэгтэй адаптерийн эрэгтэй тэжээлийн тэжээлийн хангамж Arduino UNOBreadboard Энэ нь хэрхэн ажилладаг вэ: Нэгдүгээрт, та кодыг Arduino Uno-д байршуулдаг (энэ нь дижитал төхөөрөмжөөр тоноглогдсон микроконтроллер юм. кодыг хөрвүүлэх аналог портууд (C ++)
TCA9548A I2C Multiplexer Module - Arduino болон NodeMCU -тэй: 11 алхам
TCA9548A I2C мултиплекс модуль - Arduino болон NodeMCU -ийн тусламжтайгаар: Мэдрэгч нь тогтмол эсвэл ижил I2C хаягтай гэдгийг ойлгохын тулд та Arduino руу хоёр, гурав ба түүнээс дээш I2C мэдрэгчийг залгах шаардлагатай болсон уу? Түүнээс гадна, та нэг SDA дээр ижил хаягтай хоёр төхөөрөмжтэй байж болохгүй