Spisu treści:
- Krok 1: Krok pierwszy: Złóż robota z instrukcji
- Krok 2: Krok drugi: Podłącz i kod
- Krok 3: Krok trzeci: Zakończ kodowanie
- Krok 4: Krok czwarty: Obejrzyj
Wideo: Finał klasy Otto DIY: 4 kroki
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:26
Ten projekt był możliwy dzięki Otto and Athens Technical College.
Aby rozpocząć, musisz najpierw zakupić zestaw z:
Następnie postępuj zgodnie z instrukcjami na:
Krok 1: Krok pierwszy: Złóż robota z instrukcji
wikifactory.com/+OttoDIY/otto-diy
Na tej stronie znajdziesz instrukcje montażu i kod dla Twojego robota Otto.
Jak widać, wymieszałem i dopasowałem różne części i kolory oraz użyłem przenośnego bloku ładującego do zasilania zamiast zalecanych 4 baterii AA.
Mój głośnik jest zamontowany z przodu dla łatwego słyszenia, a miecz jest przymocowany z prawej strony w celu dekoracji.
Krok 2: Krok drugi: Podłącz i kod
Po złożeniu robota załaduj Arduino IDE na komputer i podłącz robota.
W tym momencie powinieneś pobrać pliki Otto. Eksportuj je bezpośrednio do folderu bibliotek Arduino.
Umożliwi ci to użycie kodu, który przekazał ci Otto.
Krok 3: Krok trzeci: Zakończ kodowanie
Po wyodrębnieniu bibliotek musisz przejść do Arduino IDE i upewnić się, że twoje programy ładujące są aktualne.
Ustaw swoją płytę na Arduino Nano, procesor na ATmega328P (stary bootloader), a COM na dowolny port, do którego podłączono robota.
Po wykonaniu tego kroku i przygotowaniu kodu, naciśnij przycisk przesyłania w lewym górnym rogu programu, aby przesłać kod do robota.
Krok 4: Krok czwarty: Obejrzyj
Obserwuj chore ruchy swojego robota i śpiewający głos.
W zależności od użytego kodu możesz sprawić, by robot śpiewał, tańczył lub omijał przeszkody.
Ten projekt został napisany z kodem unikania:
//------------------------------------------------ -------------------------------------------------- -------------------------------------------------- -----------------// Otto_avoid przykładowy szkic //-------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------- //-- Oprogramowanie aplikacji Otto DIY PLUS w wersji 9 (V9) //-- Otto DIY inwestuje czas i zasoby, dostarczając kod i sprzęt o otwartym kodzie źródłowym, prosimy o wsparcie poprzez zakup zestawów z (https://www.ottodiy.com) //------------ -------------------------------------------------- --- //-- Jeśli chcesz używać tego oprogramowania w ramach licencji Open Source, musisz przekazać cały swój kod źródłowy do społeczności, a cały powyższy tekst musi zostać włączony do jakiejkolwiek redystrybucji //-- zgodnie z GPL w wersji 2 gdy Twoja aplikacja jest rozpowszechniana. Zobacz https://www.gnu.org/copyleft/gpl.html //-------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------------------- #include //-- Wersja biblioteki Otto 9 Otto9 Otto; //To jest Otto!
//---------------------------------------------------------
//-- Pierwszy krok: skonfiguruj piny, do których podłączone są serwa /* --------------- | O O | |---------------| Rok 3==> | | ----- ------ <== RL 4 |----- ------| */ // PINY SERWO /////////////////////////////////////////// ////////////////////////////////// #define PIN_YL 2 //servo[0] lewa noga #define PIN_YR 3 //servo[1] prawa noga #define PIN_RL 4 //servo[2] lewa noga #define PIN_RR 5 //servo[3] prawa noga // PINY ULTRADŹWIĘKOWE ////////////// //////////////////////////////////////////////// ///////// #define PIN_Trigger 8 //TRIGGER pin (8) #define PIN_Echo 9 //ECHO pin (9) // BUZZER PIN /////////////// //////////////////////////////////////////////// ///////////// #define PIN_Buzzer 13 //BUZZER pin (13) // PIN MONTAŻU SERWA ///////////////////// ///////////////////////////////////////////////// aby pomóc w montażu stóp i nóg Otto - połączenie drutu pomiędzy pinem 7 a GND #define PIN_MONTAŻ 7 //MONTAŻ pin (7) NISKI = montaż WYSOKI = normalna praca ///////////////// //////////////////////////////////////////////// //-- Zmienne globalne -------------------------------------------/ //////////////////////////////////////////////// ////////////////// odległość międzymiastowa; // zmienna do przechowywania odległości odczytanej z modułu ultradźwiękowego dalmierza bool barrierDetected = false; // stan logiczny, gdy wykryty obiekt znajduje się w ustawionej przez nas odległości /////////////////////////////////// /////////////////////////////// //-- Ustawiać -------------- ----------------------------------------// //////// //////////////////////////////////////////////// ///////// void setup() { Otto.init(PIN_YL, PIN_YR, PIN_RL, PIN_RR, prawda, A6, PIN_Buzzer, PIN_Trigger, PIN_Echo); //Ustaw piny serwa i piny ultradźwiękowe oraz pin brzęczyka pinMode(PIN_ASSEMBLY, INPUT_PULLUP); // - Łatwy montaż pin - LOW to tryb montażu //Otto obudź się! Otto.sing(S_connection);// Otto wydaje dźwięk Otto.home(); // Otto przechodzi do swojej pozycji gotowości delay(500); // odczekaj 500 milisekund, aby Otto mógł się zatrzymać // jeśli Pin 7 jest NISKI, ustaw serwa OTTO w trybie domowym, aby umożliwić łatwy montaż, // po zakończeniu montażu Otto usuń połączenie między pinem 7 a GND podczas (odczyt cyfrowy (PIN_ASSEMBLY) == LOW) { Otto.home();// Otto przechodzi do pozycji gotowości Otto.sing(S_happy_short); // śpiewaj co 5 sekund, abyśmy wiedzieli, że OTTO nadal działa delay(5000);// poczekaj 5 sekund }
}
//////////////////////////////////////////////// ///////////////// //-- Pętla główna --------------------------- ------------------// ////////////////////////////// ///////////////////////////////////// void loop() { if (obstacleDetected) { // if obiekt znajduje się bliżej niż 15cm, następnie wykonujemy następujące polecenie Otto.sing(S_surprise); // zabrzmi niespodzianka Otto.jump(5, 500); // Otto skacze Otto.sing(S_cuddly); // dźwięk a //Otto robi trzy kroki wstecz dla (int i = 0; i < 3; i++) Otto.walk(1, 1300, -1); //powtórz trzykrotne opóźnienie polecenia powrotu (500);// małe opóźnienie 1/2 sekundy, aby Otto mógł się uspokoić //Otto skręca w lewo o 3 kroki dla (int i = 0; i < 3; i++) { // powtórz trzy razy Otto.turn(1, 1000, 1); // komenda marszu w lewo delay(500);// małe opóźnienie 1/2 sekundy, aby Otto mógł się osiedlić } } else { // jeśli nic z przodu, idź naprzód Otto.walk(1, 1000, 1); //Otto iść prosto przeszkodaDetector(); // wywołanie funkcji sprawdzania dalmierza ultradźwiękowego dla obiektu znajdującego się bliżej niż 15 cm } } ////////////////////////////// //////////////////////////////////// //-- Funkcje --------- -----------------------------------------// /////// //////////////////////////////////////////////// /////////
/-- Funkcja odczytu czujnika odległości i aktualizacji zmiennej wykrytej przeszkody;
void probeDetector() { int distance = Otto.getDistance(); // uzyskaj odległość od dalmierza ultradźwiękowego if (odległość < 15) barrierDetected = true; // sprawdź, czy ta odległość jest bliższa niż 15cm, true jeśli to jeszcze przeszkodaDetected = false;// false jeśli nie }
Zalecana:
Konstrukcja oscylatora w trybie prądowym dla wzmacniaczy mocy audio klasy D: 6 kroków
Konstrukcja oscylatora w trybie prądowym dla wzmacniaczy mocy klasy D: W ostatnich latach wzmacniacze mocy klasy D stały się preferowanym rozwiązaniem dla przenośnych systemów audio, takich jak MP3 i telefony komórkowe, ze względu na ich wysoką wydajność i niski pobór mocy. Oscylator jest ważną częścią klasy D au
Wzmacniacz audio klasy D DIY: 4 kroki (ze zdjęciami)
Wzmacniacz audio klasy D DIY: W tym projekcie pokażę, dlaczego wzmacniacz klasy AB jest dość nieefektywny i jak wzmacniacz klasy D poprawia tę wydajność. Na koniec pokażę, jak możemy zastosować teorię działania wzmacniacza klasy D do kilku
Wzmacniacz audio Hi-Fi klasy 2.1 klasy AB DIY - poniżej 5 USD: 10 kroków (ze zdjęciami)
Wzmacniacz audio Hi-Fi klasy 2.1 klasy AB DIY - poniżej 5 USD: Cześć wszystkim! Dzisiaj pokażę wam, jak zbudowałem wzmacniacz audio dla systemu 2.1-kanałowego (lewo-prawo i subwoofer). Po prawie miesiącu badań, projektowania i testowania wymyśliłem ten projekt. W tej instrukcji będę chodzić
IMovie do klasy: 4 kroki
IMovie for the Classroom: W tych instrukcjach dowiesz się, jak planować, tworzyć i edytować własny iMovie, aby uzyskać ocenę A za to nieznośne zadanie wideo. Do stworzenia iMovie potrzebne będą następujące materiały: komputer Mac, aplikacja iMovie
Przekształć starą kartę pamięci w bank danych z szyfrowaniem klasy rządowej: 4 kroki
Przekształć starą kartę pamięci w bank danych z szyfrowaniem klasy rządowej: masz starą kartę pamięci? Masz cenne pliki, które musisz chronić? Dowiedz się, jak lepiej chronić swoje pliki niż proste archiwum RAR z hasłem; ponieważ w dzisiejszych czasach każdy, kto ma dobry komputer, może go odszyfrować w niecały dzień. Używam pamięci 32 MB