IQ (2-ген) сенсорларының ақауларын жою

Сенсордың кері байланысын пайдалану кезінде сіздің роботыңыз өзін мақсатқа сай әрекет етпесе, ақауларды табу және түзету үшін қадамдық ақаулықтарды жою процедурасын орындауға болады. Бұл мақала ақауларды жою процесіндегі қадамдарды түсіндіреді және осы қадамдарды пайдалану туралы кеңестер береді. 

Бұл процестің қадамдары:

  1. Мәселені анықтаңыз
  2. Аппараттық құралдарды тексеріңіз
  3. Бағдарламалық құралды тексеріңіз
  4. Деректерді талдау және қолдану

Мәселені анықтаңыз

Сенсордың ақаулықтарын жоюдың бірінші қадамы - ақауды тудыратын сенсорды анықтау. Бақыланған робот әрекетін жоспарланған робот әрекетімен салыстырыңыз. Проблемалық әрекет сенсордан туындады ма? Егер солай болса, қандай сенсор? Қандай сенсор ақаулық болуы мүмкін екенін анықтау үшін қосымша ақпарат қажет болса, роботыңыздағы сенсорларға қатысты төмендегі мақалаларды оқыңыз.

VEX IQ (2-ші буын) сенсорлары:

Қандай сенсордың күтпеген әрекетті тудыратынын анықтағаннан кейін, процесте алға жылжуыңызға болады.


Аппараттық құралдарды тексеріңіз

Екінші қадам - ​​сенсордың мақсатына сай жұмыс істей алатынына көз жеткізу үшін роботтағы жабдықты тексеру. Төмендегі аппараттық құралдардың әрқайсысы сенсордың жұмысына әсер етуі мүмкін.

Сенсордың орналасуын тексеріңіз

Қарапайым Clawbot алаңында көлік жүргізуді құрастырады. Роботта бөлектелген және алдындағы қызыл текшеге бағытталған бекітілген оптикалық сенсор бар.

Сенсордың роботта қай жерде орналасқанын қараудан бастаңыз. Сенсорды роботтың басқа бөлігі сияқты бірдеңе бұғаттап жатыр ма? Сенсордың мақсатына сай жұмыс істеуі үшін қажетті орын бар екеніне көз жеткізіңіз.

Мұнда көрсетілгендей, оптикалық сенсор анықтауға арналған нысанды анық көру сызығына ие.

Сенсор қосылымын тексеріңіз

Ми экраны Құрылғылар мәзірінде сенсорлық жарықдиодты құрылғы таңдалған кезде көрсетіледі.

VEX IQ (2-ші буын) миындағы Құрылғылар экранында хабарланған деректерге қарап сенсордың жұмысын тексеріңіз. Бұл сенсордың жалғанғанын және жұмыс істеп тұрғанын тексеруге көмектеседі.

Құрылғылар экранына кіру үшін осы мақаладағы қадамдарды орындаңыз.

(2-ші буын) қашықтық сенсорына қосылған мидың диаграммасы.

Құрылғылар экраны ашылғаннан кейін сенсор деректерді хабарлап жатқанын тексеріңіз.

Олай болмаса, сенсорлардың дұрыс жалғанғанын тексеріңіз. Датчиктерді жалғаған кезде сенсордың құлыптау қойындысы портқа толығымен қосылған кезде сықырлаған дыбысты есту керек.

Сондай-ақ, мәселеңізді шешетінін көру үшін пайдаланып жатқан сенсорды басқасына ауыстырып көруге болады.

Сенсордың орналасуымен немесе сенсор қосылымымен бірдеңені өзгертсеңіз, бұл мәселені шешкенін көру үшін жобаңызды қайта тексеріңіз. Сенсордың орналасуы мен қосылымы өзгермесе, ақауларды жою процесін жалғастыру үшін келесі қадамға өтіңіз.


Бағдарламалық құралды тексеру

Сенсордың орнатылғанын және роботқа сәтті қосылғанын анықтағаннан кейін келесі VEXcode IQ жобасын қарауға болады. Жобаны қайталау сенсордан алынған деректер жобаңызда тиімді пайдаланылуын қамтамасыз етуге көмектеседі. Келесі стратегиялар сенсорды кодтауға көмектеседі.

Осы стратегиялардың кез келгенін VEXcode IQ жобасына қолдансаңыз, бұл мәселені шешкенін көру үшін жобаңызды қайта тексеріңіз.

Микробағдарламаны және конфигурацияны тексеріңіз

VEXcode IQ құрылғылары мәзірі қосылған құрылғылардың ұзақ тізімі көрсетілген. Бұл мәзірді әрбір сенсордың дұрыс жалғанғанын тексеру және оның мидағы арнайы портын тексеру үшін пайдалануға болады.

Енді барлық құрылғылардың миға дұрыс қосылғанына сенімді болсаңыз, VEXcode IQ ішіндегі Құрылғы конфигурациясын тексеріңіз.

Барлық сенсорлардың конфигурацияда бар екеніне көз жеткізіңіз. Содан кейін әрқайсысының дұрыс портқа қосылғанына көз жеткізіңіз.

Кез келген дұрыс емес құрылғы конфигурацияларын өзгертіңіз.

Мысал жобаны іске қосыңыз

VEXcode блоктары таңдау үшін әртүрлі санаттардағы әртүрлі жобалары бар мысал жобалар мәзірі. Сезім санаты бөлектеледі.

Ақаулықтарды жойып жатқан сенсорды пайдаланатын жоба үлгісін ашыңыз. Мысал жобаларды сүзу үшін «Сезімдеу» санатын таңдауға болады.

IQ блоктарының жобалары мен үлгілері туралы қосымша ақпарат алу үшін осы мақаланы қараңыз.

IQ Python мысал жобалары мен үлгілері туралы қосымша ақпарат алу үшін осы мақаланы қараңыз.

IQ C++ мысал жобалары мен үлгілері туралы қосымша ақпарат алу үшін осы мақаланы қараңыз.

VEXcode IQ жобаның сипаттамасы бар код блоктарының дестесін және жазбаны қамтитын Sensing санатынан ашылған мысал жобасы бар. Жазба ерекшеленген.

Ашық болғаннан кейін, мысал жобадағы функционалдылықтың сенсормен істеуге тырысып жатқан нәрсеге сәйкес келетінін анықтау үшін Ескертпені оқыңыз.

Мұнда көрсетілген жобаның мысалында ескертпе қашықтық сенсорының нысанды анықтау үшін пайдаланылып жатқанын көрсетеді, осылайша нысанға жеткенде робот қозғалысын тоқтата алады.

Мысал жобасын іске қосыңыз және робот әрекетін бақылаңыз. Содан кейін бақыланатын әрекеттерді тудыру үшін сенсор деректерінің қалай пайдаланылып жатқанын көру үшін жобаны қараңыз. Бұған көмектесу үшін мысал жобасын бірнеше рет іске қосқыңыз келуі мүмкін.

Мысал жобадан үйренгеніңізді тапсырмаңызға қолдану үшін өзіңіздің жеңілдетілген жобаңызды жасап көргіңіз келуі мүмкін.

Басқа VEXcode IQ құралдарын пайдаланыңыз

Сондай-ақ VEXcode IQ жүйесінде сенсорды кодтау туралы көбірек білуге ​​көмектесетін құралдар мен стратегиялар бар. Құралдар жинағындағы блоктар немесе пәрмендер туралы анықтаманы пайдалану арқылы жеке білуге ​​болады. Сондай-ақ сенсордың не хабарлап жатқаны туралы қосымша ақпарат алу үшін жоба іске қосылған кезде сенсор деректерін көруге болады.

Анықтама мәзірі ашылған және Drive тақырыбы блогы таңдалған VEXcode IQ. Блоктың сипаттамасы және оны қалай пайдалануға болатындығы мысалдардың суреттерімен бірге көрсетілген.

Көмек

Пайдаланылатын деректер, пәрмен қандай мәндер туралы есеп беретіні және жобада пәрменді пайдалану мысалдары туралы білу үшін мысал жобадағы немесе жобаңыздағы блоктар немесе пәрмендер үшін анықтаманы оқыңыз.

VEXcode IQ блоктарында анықтамаға қол жеткізу туралы қосымша ақпарат алу үшін осы мақаланы қараңыз.

VEXcode IQ Python бағдарламасындағы анықтамаға қол жеткізу туралы қосымша ақпарат алу үшін осы мақаланы қараңыз.

VEXcode IQ C++ жүйесінде анықтамаға қол жеткізу туралы қосымша ақпарат алу үшін осы мақаланы қараңыз.

Деректерді басып шығару

Сондай-ақ, сенсордың нақты уақытта не хабарлап жатқанын жақсырақ түсінуге көмектесу үшін мысал жоба немесе жобаңыз іске қосылған ретінде сенсордан деректерді басып шығаруға болады. Бұл жобада параметр ретінде пайдаланылатын сенсордан қандай есеп берілген мәндерді анықтауға көмектеседі. 

Блоктар жобасында барлық басып шығару пәрмендерін өз стектерінде реттелген сақтау үшін бөлек {When started} қалпақ блогын пайдалануға болатынын ескеріңіз.

VEXcode IQ блоктары
VEXcode IQ жоба іске қосылған кезде сенсор деректерін тікелей басып шығару үшін Қашан басталған қалпақ блогын пайдаланатын жобаны блоктайды. Жобада Forever цикліндегі 4 блоктан кейін басталған кезде блогы бар. Циклде алдымен мидағы инерциялық сенсор орамының мәнін басып шығарыңыз, содан кейін келесі жолға өтіңіз деп оқитын түсініктеме блогы бар. Әрі қарай, Print блогы мидағы орамның басып шығару миының инерциялық бағдарын оқиды және курсорды келесі жолға орнатады. Әрі қарай, түсініктеме блогы мәнді басып шығаруды күту деп оқиды, содан кейін циклды қайталаңыз. Соңында, күту блогында 0,1 секунд күту көрсетіледі.
VEXcode IQ Python
while (Шын):
brain.screen.set_font(FontType.MONO40)
brain.screen.print(mia_inertial.orientation(ROLL, DEGREES))
brain.screen.next_row()
күту(0,1, СЕКУНД)
VEXcode IQ C++
int main() 
{
while(true)
{
Brain.Screen.setFont(mono40);
Brain.Screen.print(BrainInertial.orientation(орам, градус));
Brain.Screen.newLine();
күту (0,1, секунд);
} }

IQ Brain жүйесіне басып шығару VEXcode IQ жобасы іске қосылғанда мәндердің өзгеретінін көргіңіз келсе пайдалы. Бұл жобада параметр ретінде пайдаланылатын сенсордан қандай есеп берілген мәндерді анықтауға көмектеседі. Бұл басып шығару пәрмендерін сіз жасаған VEXcode IQ жобасына енгізуге болады, осылайша робот қозғалған кезде сенсор мәндерінің белгілі бір уақытта өзгеретінін көре аласыз. 

Жоғарыдағы бұл мысал жобалары инерциялық сенсордан IQ миына мәндерді басып шығару жолын көрсетеді. Әрбір жобадағы түсініктемелер жоба ағынын және әрбір пәрменді пайдалануды түсіндіреді.

VEXcode IQ блоктары VEXcode IQ Python

VEXcode IQ жоба жұмыс істеп тұрған кезде сенсор деректерін тікелей басып шығару үшін Қашан басталған қалпақ блогын пайдаланатын жобаны блоктайды. Жобада Forever цикліндегі 4 блоктан кейін басталған кезде блогы бар. Циклде алдымен Консольдегі қашықтық сенсорының мәнін басып шығарыңыз, содан кейін келесі жолға өтіңіз деп оқитын түсініктеме блогы бар. Әрі қарай, Print блогы Консольдегі Дистанция5 нысанының қашықтығын мм-мен басып шығаруды оқиды және курсорды келесі жолға орнатыңыз. Әрі қарай, түсініктеме блогы мәнді басып шығаруды күту деп оқиды, содан кейін циклды қайталаңыз. Соңында, күту блогында 0,1 секунд күту көрсетіледі.

Әзірге (Шын):
басып шығару(distance_7.object_distance(MM))
күту(0,1, SECONDS)
VEXcode IQ C++
int main() 
{
while (шын)
{
printf(Distance7.objectDistance(мм));
printf("\n");
күту (0,1, секунд);
} }

Басып шығару консоліне басып шығару VEXcode IQ жүйесінде робот қозғалмайтын жерде VEXcode IQ жобасын іске қосқан кезде ұсынылады. Басып шығару консоліне басып шығару үшін жобаны орындау кезінде IQ миы қосылып тұруы керек. Бұл пайдалы, себебі сіз ми экранынан деректерді оқуға әрекеттенбей, мәндерді VEXcode IQ терезесінен оқи аласыз.

Бұл мысалдар VEXcode IQ жүйесіндегі қашықтық сенсорынан (2-ші буын) консольге дейін жобаны басып шығару деректерін көрсетеді. 

VEXcode IQ блоктарында басып шығару консолін пайдалану туралы қосымша ақпаратты осы мақаланы қараңыз.

VEXcode IQ Python жүйесінде басып шығару консолін пайдалану туралы қосымша ақпаратты осы мақаланы қараңыз.


Деректерді талдау және қолдану

Содан кейін бастапқы жобаңызды реттеу үшін алдыңғы қадамдарда үйренгеніңізді пайдаланыңыз. Мақсатыңызға жету үшін сенсорды тиімді пайдалануға мүмкіндік беретін анықтама және басып шығару деректері сияқты құралдарды пайдалануды жалғастыра аласыз.

Сондай-ақ алға жылжуыңызға көмектесу үшін жобаңыз туралы сұрақтар қоюға болады. Мынадай нәрселер туралы ойланыңыз:

  • Жобаңызда < ден үлкен немесе > -ден азды пайдаланасыз ба? Таңба дұрыс бағытта тұр ма? Егер тең = мәнін пайдалансаңыз, мәндер ауқымын пайдалану үшін оны одан үлкен немесе кіші мәнге ауыстырып көріңіз.
  • Параметрлеріңіз дұрыс па? Параметрлерді орнату үшін сенсордан алынған деректерді пайдаланасыз ба? Сізге қажет ашылмалы опцияны таңдадыңыз ба?
  • Шарттарды бірнеше рет тексеріп жатырсыз ба? Жоба іске қосылғанда шарт қайта-қайта тексерілетін етіп жобаңызға Forever циклін қосып көріңіз.
  • Сіздің жобаңыз тоқтап қалды ма? Сіздің шарттарыңыз дұрыс орнатылған ба? Егер кірістірілген циклдарды пайдалансаңыз, жеке әрекеттерді оқшаулау үшін жобаңызды жеңілдетуге тырысыңыз.
  • Қоршаған орта жағдайлары сенсорға әсер ете ме? Тым ашық па, әлде тым қараңғы ма? Жолда заттар немесе адамдар бар ма? Бұл көмектесетінін көру үшін жобаңызды басқа жерде іске қосып көріңіз.
  • Жобаңыздың ең соңғы нұсқасын іске қосып жатырсыз ба? Миға жаңартылған жобаңызды жүктеп алдыңыз ба? Әр өзгерту енгізген сайын жобаны қайта жүктеп алғаныңызға көз жеткізіңіз.
  • Дұрыс түсті анықтап жатырсыз ба? Сенсор жобаңыздағы түстен басқа түсті хабарлай ма? Бұл көмектесетінін көру үшін түс параметрін өзгертіп көріңіз немесе реңк мәндерінің ауқымын пайдаланып көріңіз.
  • Сенсордың көру өрісінде нысанды анықтап жатырсыз ба? Көру өрісі роботтың қозғалысымен бірге қозғалатынын есте сақтаңыз.
  • Шартты тексеру кезінде күту блогын пайдаланасыз ба? Шартты тексеру кезінде жобада күтпейтін блоктарды пайдалануды ұмытпаңыз. VEXcode IQ жүйесінде күту және күтпеу блоктары туралы қосымша ақпарат алу үшін осы мақаланы қараңыз.
  • Егер сіз блоктармен кодтасаңыз, бүкіл стек {When started} қалпақ блогына бекітілген бе? Блок қосылған кезде ғана іске қосылады. Блоктарды сүйреп, оларды бір-біріне жалғаған кезде шерту дыбысын тыңдай аласыз.

Осы сұрақтарға жауап бере отырып, жобаңыздағы бір нәрсені бір уақытта өзгертіп, оны сынап көріңіз, содан кейін бұл өзгерістің тиімді болғанын бағалаңыз. Жобаңызды жиі сынау сіздің кодыңыздың робот әрекеттеріне қалай қосылғанын оңайырақ көруге көмектеседі.  Мәселені шешу үшін ақаулықтарды жою процесіндегі қадамдарды бірнеше рет қайталау қажет болуы мүмкін және бұл жақсы. Әрбір итерация пайдаланып жатқан сенсор туралы және оны VEXcode IQ жүйесінде қалай кодтау керектігін білуге ​​көмектеседі.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: