Nowy sposób sterowania Arduino w samochodzie RC: 7 kroków (ze zdjęciami)
Nowy sposób sterowania Arduino w samochodzie RC: 7 kroków (ze zdjęciami)
Anonim
Nowy sposób sterowania Arduino w samochodzie RC
Nowy sposób sterowania Arduino w samochodzie RC

Zrobiłem trochę pracy z samochodami sterowanymi Arduino, ale te, nad którymi pracowałem, zawsze były powolne i metodyczne. Świetnie się to sprawdza podczas nauki arduino, ale chciałem czegoś nieco bardziej… zabawnego. Wejdź do samochodu RC.

Samochody RC są dosłownie zaprojektowane tak, aby jeździć tak przyjemnie, jak to tylko możliwe - to zabawki! Wszedłem na YouTube, ale wszystko, co znalazłem, to kilka zbyt skomplikowanych sposobów konwersji samochodu RC na sterowanie Arduino. Pomyślałem, że muszą być prostsze sposoby, aby to zrobić, więc postanowiłem znaleźć własny sposób na przekształcenie samochodu RC w sterowanie Arduino, kładąc nacisk na prostotę i skuteczność.

Zamiast wypatroszyć samochód i zacząć od nowa, pomyślałem, że o wiele łatwiej będzie podłączyć istniejącą infrastrukturę. Ta metoda ma kilka naprawdę fajnych korzyści.

Włamałem się do kontrolera samochodu, ale sam samochód zostawiłem nietknięty. Pozwoliło mi to na autonomiczne sterowanie autem znacznie taniej, korzystając z systemu radiowego, który już posiadają.

Podoba mi się to rozwiązanie, ponieważ jest eleganckie, łatwe, tanie i rozszerzalne. Mam nadzieję, że uznasz go za równie przydatny jak ja!

Krok 1: Jazda próbna

Image
Image

Naprawdę chcesz otworzyć samochód i zacząć. Ale poczekaj! Właśnie dostałeś ten niesamowity nowy samochód RC, poświęć chwilę, aby zachowywać się trochę dziecinnie i jeździć nim! Ja i moi przyjaciele świetnie się bawiliśmy biegając zdalnie sterowanym samochodem „dla nauki”. Nasze ulubione miejsca do jazdy to lokalny skatepark i stary diament baseballu. Te miejsca były świetne do ćwiczenia skoków i robienia pączków, obejrzyj filmik w zwolnionym tempie, który otrzymaliśmy!

Krok 2: Otwórz kontroler

Otwórz kontroler
Otwórz kontroler
Otwórz kontroler
Otwórz kontroler

Każdy kontroler jest inny, dlatego ważne jest, aby zajrzeć do środka, aby dowiedzieć się, z czym masz do czynienia. Mój kontroler miał spust gazu i piankowe koło do obracania. Okazuje się, że zarówno spust, jak i koło były po prostu skomplikowanymi obudowami potencjometrów! Jest to bardzo wygodne, ponieważ możemy to łatwo sfałszować za pomocą arduino.

Poświęć chwilę, aby dowiedzieć się, gdzie potencjometry łączą się z płytą. Powinny mieć tam 3 przylutowane przewody: zasilanie, uziemienie i dane. Wkrótce będzie to ważne.

Krok 3: Multimetr

Natknąłem się na problem i zapomniałem spróbować użyć multimetru. Po tym, jak w końcu pamiętałem o użyciu multimetru, naprawił wszystkie moje problemy!

Multimetry są jak instrukcje drukowania w kodzie, edytor na papierze. W tym przypadku multimetr pomógł mi zrozumieć sposób podłączenia potencjometrów, dzięki czemu mogłem je lepiej sfałszować za pomocą arduino.

Aby dowiedzieć się, jak podłączone są twoje potencjometry, po prostu dotknij uziemienia do masy, a czerwony przewód multimetru do pinu danych na płycie. Kolejność powinna być jasna od koloru przewodów, ale jeśli nie, to pin danych będzie zmieniał wartość wraz z obracaniem potencjometru.

Następnie zanotowałem wartości linii danych w punkcie środkowym (pozycja domyślna) i na każdym biegunie. W ten sposób wiedziałbym, co to było 0 i w którym kierunku iść, aby zwiększyć lub zmniejszyć prędkość, lub skręcić w lewo lub w prawo. Oto moje pomiary:

  • 0 maks. prędkość
  • 1.75 v bez ruchu
  • 3.0 v maks. do tyłu
  • 0 maks. skręt w lewo
  • 1,57 bez skrętu
  • 3.37 max skręt w prawo

I tak planowałem użyć piórka Adafruit do sterowania samochodem, ponieważ podoba mi się deska, ale te pomiary potwierdzają tę decyzję. Piórko działa na logice 3,3 V, co bardzo dobrze pasuje do tego zakresu analogowego. Można to również zrobić z płytą 5V, ale trzeba by bardziej uważać na maksymalne napięcie analogowe, które dostarczasz.

Krok 4: Przetestuj to

Image
Image

Ten krok jest opcjonalny, ale uważam, że zawsze lepiej jest przetestować kroki pośrednie z kontrolkami, jeśli to możliwe. Do kontrolera podpiąłem zaciski krokodylkowe (po wylutowaniu linii danych) i przetestowałem różne napięcia. Wspaniale było obracać pokrętłem na powerbanku, aby zmieniać napięcie i obserwować obroty kół, tak jakbym poruszał nimi za pomocą kontrolera.

Krok 5: Podłącz Arduino

Podłącz Arduino
Podłącz Arduino
Podłącz Arduino
Podłącz Arduino

Ten krok był całkiem prosty, ale zrobiłem kilka rzeczy, dzięki którym działało to znacznie lepiej. Oto moja metoda:

  1. Odlutuj linie danych z dwóch potencjometrów po stronie płytki.
  2. Przylutuj luźne przewody do wtyczki męskiej: prędkość do zasilania i zwrot do masy.
  3. Przylutuj pasującą wtyczkę żeńską do płytki, aby po podłączeniu działała tak samo jak poprzednio.
  4. Przylutuj męski wtyk do arduino.

    • Jeden przewód do wbudowanego przetwornika cyfrowo-analogowego (na mojej płycie był to pin A0, nie wszystkie płyty mają to, więc najpierw sprawdź!).
    • Jeśli używasz Arduino Due lub podobnego, podłącz drugi przewód do drugiego wbudowanego przetwornika cyfrowo-analogowego.
    • W przeciwnym razie podłącz drugi przewód do wyjścia zewnętrznego DAC; Kupiłem zewnętrzną płytkę breakout DAC od adafruit.
    • Podłącz pozostałe piny zewnętrznego DAC do Arduino.
  5. Podłącz linię uziemienia jednego z potencjometrów do masy Arduino

    Zapewnienie wspólnego uziemienia pomaga radykalnie zredukować zakłócenia

Krok 6: Programowanie nowego autonomicznego samochodu

Image
Image

Teraz możesz samodzielnie sterować swoim samochodem RC! Będziesz musiał użyć biblioteki, jeśli używasz zewnętrznego przetwornika cyfrowo-analogowego, ale poza tym programowanie powinno być całkiem proste. Jak można się domyślić z okablowania, bardzo ważne jest użycie prawdziwego sygnału analogowego. Na początku próbowałem zmusić go do pracy z sygnałem PWM, ale miał mylące i ogólnie słabe wyniki. Jednak z prawdziwymi wyjściami analogowymi działa świetnie!

Zacznij od geometrycznych kształtów i wzorów, które w innym przypadku byłyby trudne do wykonania za pomocą kontrolera. Na przykład pierwszą rzeczą, którą zaprogramowałem do zrobienia, było jechanie po perfekcyjnych okręgach o różnej średnicy.

Jest to również najlżejsza modyfikacja, jaką widziałem, aby autonomicznie kontrolować samochód zdalnie sterowany, a dowiesz się wiele o tym, jak działają podczas tego procesu!

Krok 7: Kolejne kroki

Główną wadą tego rozwiązania jest brak komunikacji dwukierunkowej. Oznacza to, że mogę wysyłać instrukcje dotyczące samochodu, ale nie mogę odbierać danych z czujników.

Następną rzeczą, którą zamierzam zrobić, jest rozwiązanie tego problemu, albo przez zhakowanie strony samochodu, aby wysłać dane z powrotem, albo przez skonfigurowanie oddzielnego łącza do przekazywania danych z czujnika. Jeśli ustawię osobne łącze, nie będzie musiało być tak niezawodne, jak główne łącze napędu, ponieważ ważniejsze są sterowanie silnikiem.