Rozwiązywanie problemów z czujnikami IQ (1. generacji).

Jeśli podczas korzystania z informacji zwrotnych z czujnika Twój robot nie zachowuje się zgodnie z oczekiwaniami, możesz wykonać procedurę rozwiązywania problemów krok po kroku, aby znaleźć i rozwiązać problemy. W tym artykule wyjaśniono etapy procesu rozwiązywania problemów i podano wskazówki dotyczące korzystania z tych kroków. 

Etapy tego procesu są następujące:

  • Rozpoznaj problem
  • Sprawdź sprzęt
  • Sprawdź oprogramowanie
  • Analizuj i stosuj dane

Zidentyfikuj problem

Pierwszym krokiem do rozwiązania problemu z czujnikiem jest określenie, który czujnik powoduje problem. Porównaj zaobserwowane zachowanie robota z zamierzonym zachowaniem robota. Czy przyczyną problemu jest czujnik? Jeśli tak to jaki czujnik? Jeśli potrzebujesz więcej informacji, aby określić, który czujnik może powodować problem, przeczytaj poniższe artykuły dotyczące czujników w Twoim robocie.

Czujniki VEX IQ (1. generacji):

Po zidentyfikowaniu, który czujnik powoduje niezamierzone zachowanie, możesz kontynuować proces.


Sprawdź sprzęt

Drugim krokiem jest sprawdzenie sprzętu robota, aby upewnić się, że czujnik działa zgodnie z przeznaczeniem. Każdy z poniższych czynników sprzętowych może mieć wpływ na funkcjonalność czujnika.

Sprawdź rozmieszczenie czujników

Clawbot IQ zbudował pojazd jeżdżący po polu, ze strzałką wskazującą od przymocowanego czujnika koloru do zielonego sześcianu znajdującego się przed robotem.

Zacznij od sprawdzenia, gdzie w robocie znajduje się czujnik. Czy czujnik jest przez coś blokowany, np. przez inną część robota? Upewnij się, że czujnik ma wystarczająco dużo miejsca, aby działać zgodnie z przeznaczeniem.

Jak pokazano tutaj, czujnik koloru ma wyraźną widoczność obiektu, który ma wykryć.

Sprawdź połączenie czujnika

Ekran mózgu jest wyświetlany w menu Ustawienia z wybraną opcją Informacje o urządzeniu. Informacje o urządzeniu to druga opcja na liście, po Informacjach o systemie.

Przetestuj funkcjonalność czujnika, przeglądając dane zgłoszone w menu urządzenia w VEX IQ (1. generacji) Brain. Pomoże to sprawdzić, czy czujnik jest podłączony i działa.

Aby uzyskać dostęp do menu urządzenia, czynności opisane w tym artykule.

Schemat układu Brain (1. generacji) podłączonego do inteligentnego silnika i przełącznika zderzaka. Przełącznik zderzaka jest oznaczony strzałką i opisany jako Czujnik.

Po otwarciu ekranu urządzeń sprawdź, czy czujnik przesyła dane.

Jeśli nie, upewnij się, że czujniki są prawidłowo podłączone. Podczas podłączania czujników powinno być słyszalne trzaśnięcie, gdy zatrzask blokujący czujnika zostanie całkowicie osadzony w porcie.

Możesz także spróbować zamienić używany czujnik na inny, aby sprawdzić, czy to rozwiąże problem.

Jeśli zmieniłeś coś w rozmieszczeniu czujnika lub podłączeniu czujnika, przetestuj projekt ponownie, aby sprawdzić, czy to rozwiązało problem. Jeśli umiejscowienie czujnika i połączenie nie uległy zmianie, przejdź do następnego kroku, aby kontynuować proces rozwiązywania problemów.


Sprawdź oprogramowanie

Kiedy już ustalisz, że czujnik został pomyślnie umieszczony i podłączony do robota, możesz przejść do projektu VEXcode IQ. Powtarzanie projektu może pomóc w zapewnieniu efektywnego wykorzystania danych z czujnika w projekcie. Poniższe strategie mogą pomóc w kodowaniu czujnika.

Jeśli zastosujesz którąkolwiek z tych strategii w swoim projekcie VEXcode IQ, przetestuj swój projekt ponownie, aby sprawdzić, czy to rozwiązało problem.

Sprawdź oprogramowanie sprzętowe i konfigurację

VEXcode IQ z podłączonym mózgiem i otwartym menu rozwijanym Mózg, wskazującym, że można go użyć do sprawdzenia oprogramowania układowego mózgu. Wersja VEXos jest podana jako 2.2.0, a po prawej stronie znajduje się przycisk Wymuś aktualizację.

Zacznij od upewnienia się, że oprogramowanie sprzętowe Twojego IQ Brain jest aktualne.

Zobacz ten artykuł, aby uzyskać informacje na temat aktualizacji oprogramowania sprzętowego w VEX IQ (1. generacji) Brain.

Menu urządzeń VEXcode IQ z długą listą podłączonych urządzeń. Za pomocą tego menu można sprawdzić, czy każdy czujnik jest prawidłowo podłączony, a także sprawdzić przypisany mu port w mózgu.

Teraz, gdy masz pewność, że wszystkie urządzenia są prawidłowo podłączone do Brain, sprawdź konfigurację urządzenia w VEXcode IQ.

Sprawdź, czy w konfiguracji są obecne wszystkie czujniki. Następnie sprawdź, czy każdy z nich jest podłączony do właściwego portu.

Zmień wszelkie nieprawidłowe konfiguracje urządzeń.

Uruchom przykładowy projekt

Przykładowe menu projektów bloków VEXcode z różnorodnymi projektami do wyboru w różnych kategoriach. Kategoria Czujniki jest podświetlona.

Otwórz przykładowy projekt wykorzystujący czujnik, z którym rozwiązujesz problem. Możesz wybrać kategorię „Wykrywanie”, aby przefiltrować przykładowe projekty.

Więcej informacji na temat przykładowych projektów i szablonów IQ Blocks znaleźć w tym artykule.

Więcej informacji na temat przykładowych projektów i szablonów IQ C++ w tym artykule.

VEXcode IQ z przykładowym projektem otwartym z kategorii Czujniki, zawierającym stos bloków kodu i notatkę z opisem projektu. Notatka jest podświetlona.

Po otwarciu przeczytaj Uwagę, aby określić, czy funkcjonalność w przykładowym projekcie jest zgodna z tym, co próbujesz zrobić z czujnikiem.

W pokazanym tutaj przykładowym projekcie uwaga wskazuje, że projekt ten stanowi przykład wykorzystania wszystkich dostępnych poleceń czujnika odległości w robocie.

Uruchom przykładowy projekt i obserwuj zachowanie robota. Następnie przyjrzyj się projektowi, aby zobaczyć, w jaki sposób dane z czujników są wykorzystywane do wywoływania zaobserwowanych zachowań. Aby sobie z tym poradzić, możesz chcieć uruchomić przykładowy projekt wiele razy.

Możesz także spróbować stworzyć własny uproszczony projekt, aby zastosować w swoim zadaniu to, czego nauczyłeś się z przykładowego projektu.

Użyj innych narzędzi VEXcode IQ

Istnieją również narzędzia i strategie, których możesz użyć, aby dowiedzieć się więcej o kodowaniu czujnika w VEXcode IQ. O blokach i poleceniach znajdujących się w Toolboxie możesz dowiedzieć się indywidualnie, korzystając z Pomocy. Możesz także przeglądać dane czujnika w trakcie realizacji projektu, aby dowiedzieć się więcej o tym, co raportuje czujnik.

VEXcode IQ z otwartym menu Pomoc i wybranym blokiem nagłówka Drive. Opisy bloków i sposobów ich wykorzystania są prezentowane wraz ze zdjęciami przykładowych zastosowań.

Pomoc

Przeczytaj Pomoc dotyczącą bloków lub poleceń w przykładowym projekcie lub w swoim projekcie, aby dowiedzieć się, jakie dane są używane, jakie wartości będzie raportować polecenie i przykłady użycia polecenia w projekcie.

Zobacz ten artykuł, aby dowiedzieć się więcej o dostępie do pomocy w blokach VEXcode IQ.

Zobacz ten artykuł, aby dowiedzieć się więcej o uzyskiwaniu dostępu do Pomocy w VEXcode IQ C++.

Drukowanie danych

Możesz także wydrukować dane z czujnika w trakcie realizacji przykładowego projektu lub Twojego projektu, aby lepiej zrozumieć, co czujnik raportuje w czasie rzeczywistym. Może to pomóc w określeniu, jakie wartości raportowane z czujnika wykorzystać jako parametry w projekcie. 

Należy pamiętać, że w projekcie Blocks można zastosować oddzielny blok kapelusza {When started} , aby wszystkie polecenia drukowania były zorganizowane we własnym stosie.

Bloki IQ VEXcode

Projekt bloków VEXcode IQ wykorzystuje blok When started hat do drukowania danych z czujników na bieżąco podczas działania projektu. Projekt ma blok When started, po którym następują 4 bloki w pętli Forever. W pętli najpierw znajduje się blok komentarza, który brzmi: Wyświetl odległość do obiektu w mózgu. Następnie blok Print odczytuje odległość Print Distance7 w mm na Brain i ustawia kursor w następnym wierszu. Następnie blok komentarza odczytuje polecenie Wait to print the value, a następnie powtarza pętlę. Na koniec blok Wait odczytuje czas oczekiwania 0,1 sekundy.

Aby powiększyć, kliknij powyższy obraz.

VEXcode IQ C++

int main() {
// Rozpocznij kod projektu
// Zmień rozmiar czcionki, aby pasował do ekranu IQ (2. generacja) Brain
Brain.Screen.setFont(mono12);

// Pętla drukująca wszystkie wartości pomiaru odległości na ekranie
while (true) {
// Wyczyść ekran i ustaw kursor w lewym górnym rogu ekranu
Brain.Screen.clearScreen();
Brain.Screen.setCursor(1, 1);
Brain.Screen.print("Znaleziono obiekt: %s", Distance.foundObject() ? „TRUE” : „FALSE”);
Brain.Screen.newLine();

Brain.Screen.print("Odległość - mm: %.0f", Distance.distance(mm));
Brain.Screen.newLine();

Brain.Screen.print("Odległość - cale: %.0f", Distance.distance(cale));
Brain.Screen.newLine();

// Krótkie opóźnienie umożliwiające wydrukowanie tekstu bez zniekształceń lub rozrywania
wait(0,2, seconds);
}
}

Drukowanie do IQ Brain jest pomocne, gdy chcesz zobaczyć, jak wartości zmieniają się w trakcie działania projektu VEXcode IQ. Może to pomóc w określeniu, jakie wartości raportowane z czujnika wykorzystać jako parametry w projekcie. Te polecenia drukowania można włączyć do już utworzonego projektu VEXcode IQ, dzięki czemu można zobaczyć, jak wartości czujnika zmieniają się w określonych momentach ruchu robota. 

Powyższe przykładowe projekty pokazują, jak drukować wartości z czujnika odległości do IQ Brain. Komentarze w każdym projekcie wyjaśniają przebieg projektu i użycie każdego polecenia.

Korzystanie z menu urządzenia w IQ Brain jest pomocne, gdy chcesz przeglądać wartości czujników podczas ręcznego manipulowania robotem. Możesz uzyskać dostęp do menu urządzenia bez uruchamiania projektu VEXcode IQ i zobaczyć wartości wykryte przez czujnik. 

Ekran mózgu jest wyświetlany w menu Ustawienia z wybraną opcją Informacje o urządzeniu. Informacje o urządzeniu to druga opcja na liście, po Informacjach o systemie.

Wybierz przycisk X, aby uzyskać dostęp do ustawień Brain, przewiń w dół do opcji Informacje o urządzeniu i naciśnij przycisk zaznaczenia, aby otworzyć menu urządzenia.

Ekran mózgu jest wyświetlany w menu urządzenia. W tym przykładzie pokazano czujnik koloru portu 3, z trybem 3 (kolor), wartością koloru jako zielony i wartością odległości jako bliska. Poniżej znajduje się komunikat „Naciśnięcie przycisku Sprawdź zmienia tryb”. Na dole ekranu znajdują się ikony wskazujące, że przyciski strzałek służą do przewijania, a przycisk X umożliwia wyjście z menu urządzenia.

W menu urządzenia użyj przycisków strzałek, aby wybrać urządzenie, o którym chcesz wyświetlić więcej informacji. Na tym obrazie wybrano czujnik koloru. Więcej informacji na temat przeglądania informacji o urządzeniu w mózgu (1. generacji) znaleźć w tym artykule.


Analizuj i stosuj dane

Następnie wykorzystaj wiedzę zdobytą w poprzednich krokach, aby dostosować swój oryginalny projekt. Możesz nadal korzystać z narzędzi takich jak Pomoc i drukowanie danych, aby efektywnie wykorzystywać czujnik do osiągnięcia swojego celu.

Możesz także zadawać pytania na temat swojego projektu, aby pomóc Ci w dalszym rozwoju. Pomyśl o takich rzeczach jak:

  • Czy w swoim projekcie używasz wartości większej niż < czy mniejszej niż > ? Czy symbol jest skierowany we właściwym kierunku? Jeśli używasz równości =, spróbuj zastąpić ją wartością większą lub mniejszą niż, aby użyć zakresu wartości.
  • Czy Twoje parametry są prawidłowe? Czy wykorzystujesz dane z czujnika do ustawiania parametrów? Czy wybrałeś potrzebną opcję rozwijaną?
  • Czy sprawdzasz warunki więcej niż raz? Spróbuj dodać pętlę Forever do swojego projektu, aby warunek był wielokrotnie sprawdzany podczas uruchamiania projektu.
  • Czy Twój projekt utknął? Czy Twoje warunki są ustawione prawidłowo? Jeśli używasz zagnieżdżonych pętli, spróbuj uprościć swój projekt, aby wyizolować poszczególne zachowania.
  • Czy warunki otoczenia wpływają na czujnik? Czy jest za jasno czy za ciemno? Czy na drodze znajdują się przedmioty lub ludzie? Spróbuj uruchomić projekt w innej lokalizacji, aby sprawdzić, czy to pomoże.
  • Czy korzystasz z najnowszej wersji swojego projektu? Czy pobrałeś zaktualizowany projekt do Brain? Po każdej zmianie pamiętaj o ponownym pobraniu projektu.
  • Czy wykrywasz właściwy kolor? Czy czujnik zgłasza inny kolor niż ten, który masz w swoim projekcie? Spróbuj zmienić parametr koloru.
  • Czy wykrywasz obiekt w polu widzenia czujnika? Pamiętaj, że pole widzenia zmienia się w połączeniu z ruchem robota.
  • Czy używasz bloku oczekującego podczas sprawdzania warunku? Upewnij się, że podczas sprawdzania warunku używasz w projekcie bloków nie oczekujących. Zobacz ten artykuł, aby dowiedzieć się więcej na temat bloków oczekujących i nieczekających w VEXcode IQ.
  • Jeśli kodujesz w blokach, czy cały stos jest dołączony do {When started} bloku kapelusza? Bloki będą działać tylko wtedy, gdy zostaną połączone. Możesz słuchać dźwięku kliknięcia podczas przeciągania bloków i łączenia ich ze sobą.

Odpowiadając na te pytania, pamiętaj o zmianie jednej rzeczy w projekcie na raz, przetestuj ją, a następnie oceń, czy ta zmiana była skuteczna. Częste testowanie projektu może pomóc Ci łatwiej zobaczyć, jak Twój kod jest powiązany z zachowaniami robota.  Być może konieczne będzie wielokrotne powtórzenie kroków procesu rozwiązywania problemów, aby rozwiązać problem i to jest w porządku. Każda iteracja pomoże Ci dowiedzieć się więcej o czujniku, którego używasz i jak go zakodować w VEXcode IQ.

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

Last Updated: