Skocz do zawartości

Danieo

Użytkownicy
  • Zawartość

    4
  • Rejestracja

  • Ostatnio

Reputacja

5 Neutralna

O Danieo

  • Ranga
    1/10

Informacje

  • Płeć
    Mężczyzna

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. @Treker Tak, mam już parę planów, jednak są one dosyć czaso i budżetochłonne oraz do ich wykonania muszę reaktywować swoją drukarkę 3D No i na razie chcę dokończyć parę innych rozpoczętych projektów. Ale jak pojawi się coś ciekawego na pewno się pochwalę.
  2. Wstęp Niedawno miałem okazję prowadzić zajęcia feryjne dla dzieci. Tematem, który wybrałem była robotyka. Jako, że jest to gałąź techniki, która w naszych czasach bardzo prężnie się rozwija i można powiedzieć, że rewolucjonizuje nasz świat chciałem w młodych umysłach zaszczepić do niej pasję i być może przyczynić się do rozwoju kolejnego pokolenia inżynierów. Poza tym roboty są po prostu fajne, a dzieci lubią fajne rzeczy. Potrzebna więc była konstrukcja z którą dzieciaki będą mogły wejść w jakąś interakcję, była prosta, szybka i możliwa do zbudowania z tego co miałem pod ręką . Wybór padł na line followera. Założenia projektu Zbudowanie Line Followera z części jakie miałem pod ręką w swoim warsztacie (ograniczony a właściwie zerowy budżet) Maksymalne uproszczenie programu i zasady działania robota, by być w stanie objaśnić go młodszym Możliwość szybkiego złożenia robota Konstrukcja Układ elektroniczny jest banalny (nie znajdziemy tu żadnych enkoderów czy innych rzeczy znanych z konstrukcji startujących w zawodach). Głównym elementem robota jest Arduino Leonardo (aczkolwiek pod gabaryty robota lepiej sprawdziłoby się Nano, którego niestety nie miałem) do którego przyłączono dwie sekcje układu robota: napęd oraz sensor. Pod napęd wykorzystałem dwa silniczki DC Dagu z przekładnią(Mogą być np. takie). Ich sterowaniem zajął się układ L293D. W line followerach jako czujnik najczęściej wykorzystuje się transoptory odbiciowe czy własny moduł złożony z LEDów IR i fototranzystora. Ja jednak z powodu chęci maksymalnego uproszczenia całości (oraz "wizualizacji działania czujnika") wykorzystałem zwykłe białe LEDy oraz fotorezystor. Schemat zamieszczam poniżej. Dodam, że pierwotnie robot miał być zasilany przez ogniwo Li-Po z odpowiednim układem (zabezpieczenia + boost do 5V), jednak nie naładowałem żadnego ogniwa a do pokazu było coraz bliżej, więc zasiliłem Arduino z power banka. Mechanika robota jest jeszcze prostsza niż elektronika. Podwozie zostało wydrukowane na drukarce 3D i dostosowane pod Line Followera (wziąłem je z innego projektu). Koła już miałem osadzone na wale przekładni (silniczki, przekładnia jak i koła pochodzą z demontażu mojej starej konstrukcji). Zostały one wycięte z sklejki 5mm przy pomocy otwornicy a następnie nakleiłem na nie trochę gumy dla lepszej przyczepności. Program jest również bardzo prosty. Robot ma za zadanie ciągle skręcać w lewo, jeśli jednak natrafi na linię ma odbić w drugą stronę (W sumie to nie powinien być line follower a line avoider ). int enableChannel1 = 9; int channel1A = 0; int channel1B = 1; int enableChannel2 = 10; int channel2A = 2; int channel2B = 3; int motorPower = 255; int sensor; void setup() { //Serial.begin(9600); //Serial.println("Init"); pinMode(enableChannel1, OUTPUT); pinMode(channel1A, OUTPUT); pinMode(channel1B, OUTPUT); pinMode(enableChannel2, OUTPUT); pinMode(channel2A, OUTPUT); pinMode(channel2B, OUTPUT); } void loop() { sensor = analogRead(A0); //Serial.println(sensor); if(sensor < 200) //Wartość tą należy znaleźć samemu i dopasować ją pod swój fotorezystor i warunki oświetleniowe { forwardRight(); } else { forwardLeft(); } } void forwardRight() { //Right analogWrite(enableChannel2, motorPower); digitalWrite(channel2A, HIGH); digitalWrite(channel2B, LOW); //Left analogWrite(enableChannel1, motorPower); digitalWrite(channel1A, LOW); digitalWrite(channel1B, LOW); } void forwardLeft() { //Right analogWrite(enableChannel2, motorPower); digitalWrite(channel2A, LOW); digitalWrite(channel2B, LOW); //Left analogWrite(enableChannel1, motorPower); digitalWrite(channel1A, HIGH); digitalWrite(channel1B, LOW); } Kwestie do poprawy gdy czas pozwoli Udoskonalić program i dodać możliwość kalibracji czujnika bez modyfikowania programu Dodać zintegrowane zasilanie (akumulator Li-Po z układem zabezpieczającym i boostem do 5V) Jakoś przymocować to Arduino aby tak nie latało luzem Na koniec załączam parę zdjęć konstrukcji. Powiem szczerze był to pierwszy LF jakiego zbudowałem, bo do tej pory jakoś z tym zwlekałem (uznawałem, że mam ciekawsze projekty ). Jednak ten nieskomplikowany projekcik pokazał, że to fajna zabawa i gdy czas pozwoli zbuduję line followera z prawdziwego zdarzenia.
×
×
  • Utwórz nowe...