Агуулгын хүснэгт:

FTC дахь үйл явдалд тулгуурласан програмчлал: 4 алхам
FTC дахь үйл явдалд тулгуурласан програмчлал: 4 алхам

Видео: FTC дахь үйл явдалд тулгуурласан програмчлал: 4 алхам

Видео: FTC дахь үйл явдалд тулгуурласан програмчлал: 4 алхам
Видео: Лучшие страшные видео 2023 года [Mega Scary Comp. V4] 2024, Арваннэгдүгээр
Anonim
FTC дахь үйл явдалд тулгуурласан програмчлал
FTC дахь үйл явдалд тулгуурласан програмчлал

Энэ жил манай баг роботынхоо үйл явдалд тулгуурласан програм хангамж хөгжүүлэх чиглэлээр маш их ажил хийсэн. Эдгээр хөтөлбөрүүд нь багт бие даасан хөтөлбөр, тэр ч байтугай давтагдах телепоп үйл явдлыг үнэн зөв боловсруулах боломжийг олгосон юм. Програм хангамжийн ажил нь нарийн төвөгтэй байдаг тул бид FTC роботуудад зориулсан үйл явдалд тулгуурласан код боловсруулах талаар олж авсан мэдлэгээ хуваалцахаар шийдлээ.

Алхам 1: Үйл явдалд тулгуурласан програмчлал гэж юу вэ?

Ерөнхийдөө Techopedia-ийн үзэж байгаагаар үйл явдалд суурилсан програмчлал нь хэрэглэгчийн оруулсан мэдээлэлд хариу өгөх програмыг хөгжүүлэх явдал юм. Энэ утгаараа олон програмыг аливаа үйлдлийг хийхдээ хүний удирдлагатай хянагчийн оролтод тулгуурладаг багийн телепоп програмыг оролцуулан үйл явдалд тулгуурласан гэж үздэг. Гэсэн хэдий ч манай багийн хийж байсан ажлын хувьд үйл явдалд суурилсан програмчлал нь янз бүрийн оролтоос програм хангамж бий болгох явдал юм; өөрөөр хэлбэл бид хянагч, мэдрэгчийн оролт дээр үндэслэн үйл явдлыг баримтжуулж, дараа нь эдгээр үйл явдлыг дараалалд оруулж, бүртгэгдсэн үйл явдлыг дахин ажиллуулахын тулд файлыг ашиглаж болно.

Манай роботод зориулсан програм боловсруулах энэ арга нь хэд хэдэн давуу талтай.

  • Энэ нь бидэнд үнэн зөв бие даасан програм үүсгэх боломжийг олгодог. Бид үйл явдлын үеэр програм хангамжийг бодит цаг хугацаанд бүтээж байгаа тул цуглуулсан, ашигласан мэдрэгчийн утга нь маш анхны нарийвчлалтай байх болно.
  • Энэ нь бидэнд бие даасан програмуудыг хурдан үүсгэх боломжийг олгодог. Бие даасан хөтөлбөр хийх нь хэд хэдэн үйл явдлыг бүртгэх, шаардлагатай бол үйл явдлыг тохируулахтай адил хялбар юм.
  • Энэ нь бидэнд теле үйлдлийн автомат процессыг бий болгох боломжийг олгодог. Телевизийн үйлдлийг давтахын тулд үйл явдалд суурилсан програмчлал нь эдгээр үйлдлийг бүртгэж, тоглолтыг жолоочийн хяналтан дор товчлуурт шилжүүлэх боломжийг олгодог. Эдгээр автомат үйл явдалд мэдрэгч нөлөөлж, үнэн зөв гүйцэтгэх боломжийг олгодог.

Алхам 2: Үйл явдалд тулгуурласан програмчлалын логик урсгал

Үйл явдалд тулгуурласан програмчлалын логик урсгал
Үйл явдалд тулгуурласан програмчлалын логик урсгал

Дараахь үйл явдалд тулгуурласан хөтөлбөрийн логик урсгалыг дүрсэлсэн болно: улаан нь үйл явдлыг бүтээхийг, цэнхэр нь үйл явдлын дуудлагыг дүрсэлсэн болно. Үйл явдал үүсгэхийн тулд оролтын дарааллыг роботын үйлдлээр хүлээн авч, үйл явдлын хэлбэрээр бүртгэдэг; эдгээр үйл явдлыг файлд бичсэн болно. Үйл явдал дуудахын тулд уг файлыг уншиж, оролтыг файлын кодыг роботын үйлдэл болгохын тулд үйл явдлын процессор руу илгээдэг.

Алхам 3: Үйл явдал зохиогч

Үйл явдал зохиогч
Үйл явдал зохиогч
Үйл явдал зохиогч
Үйл явдал зохиогч

Үйл явдал бүтээгчид нь янз бүрийн мэдрэгч, товчлуур дээр суурилсан үйлдэл эсвэл "үйл явдлыг" баримтжуулахад ашигладаг. Робот талбай дээр үйл ажиллагаа явуулдаг тул үйл явдал бүтээгч анги нь үйл явдал тус бүрт ангилсан үйл явдлыг иш татан тус тусад нь үйл явдал үүсгэж байна. Үйл явдлыг үүсгэсний дараа үйл явдлын анги дахь үйл явдлын дараалалд оруулдаг: эхний үйл явдал дээд байрыг эзэлдэг, дараа нь хоёр дахь үйл явдал дээд байрыг эзэлж, доорх аливаа үйл явдлыг түлхдэг бөгөөд энэ нь хөтөлбөр зогсох хүртэл үргэлжилдэг. Хөтөлбөрийг зогсоосны дараа үйл явдал нь JSON файл гэх мэт хүний уншиж болох форматтай файл руу шилждэг. Энэ файлыг бие даасан горимыг сайжруулахад ашиглаж болно.

Дээрх жишээ код нь тухайн үйл явдлын параметрүүдийг тохируулдаг бөгөөд энэ тохиолдолд IMU мэдрэгчийг ашиглах нь эргэлт болно. Дараа нь бид үйл явдлыг дарааллын дараалалд оруулдаг. Эцэст нь бид үйл явдлыг таслан зогсоож байгаа бөгөөд энэ нь үндсэндээ үйл явдлыг дахин тохируулж байгаа бөгөөд ингэснээр бид ирээдүйд болох үйл явдлуудыг дараалалд оруулах боломжтой болно.

Алхам 4: Үйл явдлын процессор

Үйл явдлын процессор
Үйл явдлын процессор
Үйл явдлын процессор
Үйл явдлын процессор

Үйл явдлын ангиуд нь үйл явдал зохиогчийн ангид бүтээгдсэн, хүн унших боломжтой файлыг авдаг бөгөөд дараалсан үйл явдал бүрийг үйл явдлын процессорын ангид заасан аргуудыг дуудаж хэлэхийг хүссэн бүх зүйлийг хийдэг. Үйл явдлын процессорын анги дараа нь ямар үйл явдлыг дахин тоглохыг роботод хэлдэг. Энгийн "урагшаа хөтлөх" үйл явдал ч бай, зай, эргэлт, туузаар дүүрэн цогц үйл явдал ч бай, процессор түүнд өгсөн аливаа үйл явдлыг дахин тоглуулах болно. Энэ процесс нь бие даасан байдлын хувьд маш ашигтай байдаг, учир нь баг нь мэдрэгч болон Tele-Op үйлдлийг таарахаас өмнө бичиж, дараа нь үйл явдлыг бие даан дахин тоглуулж чаддаг. Энэ процессыг Memory Replay гэж нэрлэдэг. Энэ нь бие даасан програмыг нэг файлаар 100% тохируулах боломжийг олгодог. Үйл явдлыг бүтээгч, процессорыг байгуулсны дараа баг нь хүний унших боломжтой файлаар дамжуулан бие даасан горимыг өөрчлөх боломжтой.

Дээрх жишээ нь эхлээд үйл явдлын JSON файлыг шалгаж, дараа нь тухайн үйл явдлыг тохиолдлын мэдэгдэл ашиглан шалгаж, энэ нь ямар төрлийн үйл явдал болохыг харах бөгөөд энэ тохиолдолд IMU мэдрэгч ашиглан эргэх явдал юм. Энэ нь IMU -ийн үйл явдлыг ашиглах ээлж гэдгийг хэлж өгсний дараа энэ үйл явдлыг боловсруулахтай холбоотой бөгөөд ихэвчлэн тухайн үйл явдлын хувьсагчдыг ашиглан үйл явдлын кодыг ажиллуулж, өмнө нь хийж байсан үйл явдлыг хуулбарлах болно.

Зөвлөмж болгож буй: