Spisu treści:

Pełnowymiarowy samochód RC: 14 kroków (ze zdjęciami)
Pełnowymiarowy samochód RC: 14 kroków (ze zdjęciami)

Wideo: Pełnowymiarowy samochód RC: 14 kroków (ze zdjęciami)

Wideo: Pełnowymiarowy samochód RC: 14 kroków (ze zdjęciami)
Wideo: Sprzedajemy motocykl #shorts 2024, Lipiec
Anonim
Image
Image
Komponenty Systemu - Samochód
Komponenty Systemu - Samochód

Co to jest?

Myślisz, że samochody RC są tylko dla dzieci? Pomyśl jeszcze raz! Ten samouczek pokaże Ci, jak wyposażyć i zbudować pełnowymiarowy samochód RC w skali 1:1. Wyposażenie samochodu w te elementy sterujące jest dobrą platformą startową do zbudowania własnego, w pełni autonomicznego samochodu (kolejna faza).

UWAGA: Ta kompilacja jest oparta na samochodzie w stylu innym niż „drive-by-wire”. Jeśli chcesz przeczytać mój inny samouczek dotyczący samochodu „drive-by-wire”, sprawdź go tutaj.

Krok 1: Tło

Image
Image

Zawsze chciałem zbudować własny samochód do samodzielnego prowadzenia i nie ma lepszego sposobu na rozpoczęcie pracy niż modyfikacja starego samochodu, aby wszystkie elementy sterujące były obsługiwane bez człowieka w samochodzie. Tak więc pierwszym etapem jest wyposażenie samochodu w te elementy sterujące, a następnie zdalne uruchamianie ich za pomocą RC.

Postanowiłem udokumentować ten proces, aby pokazać innym, że bariera wejścia do budowy samochodu autonomicznego jest bardzo niska i niezbyt droga (<2 tys. USD). Chcę, żeby tysiące ludzi budowało te samochody, więc mamy dużo więcej ludzi, którzy mają rzeczywiste doświadczenie w mechatronice, informatyce i ogólnie inżynierii.

Moje umiejętności

  • Zbudowano i odnowiono ponad 8 samochodów i 10 motocykli
  • Całe życie pracowałem w produkcji
  • Wykwalifikowany Monter i Tokarz
  • Wykwalifikowany Narzędziownia
  • Licencjat z informatyki
  • Założyciel QRMV - specjalizującej się w Vision Guided Industrial Robotics
  • Współzałożyciel / CTO ollo wearables - sterowany głosem telefon komórkowy dla seniorów / osób starszych (nowoczesne alerty życiowe)
  • Wiele patentów (przyznanych i tymczasowych) telefonii, geopozycjonowania i wizji komputerowej

Krok 2: Potrzebne umiejętności

Mam bardzo techniczne zaplecze, ale myślę, że każdy, kto jest trochę praktyczny, powinien być w stanie dość łatwo zbudować jeden z nich. Jeśli nie masz wszystkich umiejętności, najłatwiej jest poprosić innych, których znasz, aby dołączyli do kompilacji. W ten sposób możecie się nawzajem uczyć.

Mechanika - poznaj samochód i jego komponenty oraz jak one ze sobą współpracują

Mechaniczne - możliwość korzystania z szerokiej gamy narzędzi ręcznych i elektrycznych (wiertarka, szlifierka, tokarka itp.)

Elektronika - zrozum, projektuj i buduj podstawowe obwody (dobór komponentów, lutowanie itp.)

Rysowanie - być w stanie narysować komponenty w CAD do obróbki przez osoby trzecie

Programowanie - Umiejętność budowania prostych szkiców Arduino, używania git itp.

Krok 3: Koszt budowy

W skrócie - <2 tys. Koszt zbudowania jednego z tych samochodów tak naprawdę sprowadza się do tego, za ile można uzyskać działający samochód, ponieważ jest to prawdopodobnie najwyższy i najbardziej zmienny element kosztowy w projekcie. Za pierwszy samochód, który zbudowałem, udało mi się odebrać moją małą Hondę Civic z 1991 roku za 300 dolarów i nadal była ona zarejestrowana.

Wszystkie inne komponenty, których będziesz potrzebować, są w większości „z półki”, więc ceny nie będą się zbytnio różnić.

Krok 4: Lista części

Pełną listę części oraz dostawców/producentów można znaleźć tutaj.

  • Samochód (bez drive-by-wire)
  • Siłownik liniowy (elektryczny) - selektor biegów
  • Siłownik liniowy (elektryczny) – hamulce
  • Serwo (wysoki moment obrotowy) - akcelerator
  • Moduł elektronicznego wspomagania kierownicy - układ kierowniczy
  • Arduino Uno - Integracja systemu sterowania
  • Wysokoprądowy (5A) zasilacz regulowany 5-6V (dla serwo)
  • 8/9 kanałowy kontroler RC i odbiornik
  • Akumulator o głębokim cyklu (opcja)
  • Akumulator pomocniczy - przekaźnik czuły na napięcie (opcjonalnie)
  • Pojemnik na baterie (opcjonalnie)
  • Izolator baterii
  • Sterownik silnika 60A (wielokierunkowy)
  • Sterownik silnika 2 x 32A (wielokierunkowy)
  • 2 moduły przekaźnikowe 30A 5 V
  • 2 x potencjometry przesuwne
  • 2 x potencjometry wieloobrotowe
  • ~ 50A wyłącznik lub bezpiecznik
  • Przyciski i styki zatrzymania awaryjnego
  • Przewód (wysoki prąd dla silników/akumulatorów i wielordzeniowy do podłączenia)
  • Skrzynka bezpieczników samochodowych
  • Płaskownik stalowy (25x3mm i 50x3mm)
  • Płyta aluminiowa (3-4mm)
  • Obudowy ABS na elektronikę
  • Instrukcja warsztatu samochodowego

Krok 5: Elementy systemu - samochód

Uwaga: W tym samouczku buduję na samochodzie typu „drive-by-wire”, jakim jest Honda Civic z 1990 roku. Jeśli chcesz zbudować samochód „drive-by-wire”, opublikuję informacje o mojej kompilacji w nadchodzących miesiącach.

Dla samochodu, który chcesz upewnić się, że odhacza następujące;

  • Samochód uruchamia się, działa i może jeździć (jeśli nie, spraw, aby działał)
  • Ma automatyczną skrzynię biegów
  • Hamulce działają
  • Alternator jest sprawny

Krok 6: Elementy systemu - konfiguracja akumulatora pomocniczego (opcjonalnie)

W tym samouczku będę używał drugiego / pomocniczego akumulatora głębokiego cyklu, ale jest to opcjonalne. Zdecydowałem się to zrobić w mojej kompilacji, ponieważ oryginalna bateria w samochodzie była bardzo mała i istniała umowa, aby uzyskać akumulator głębokiego cyklu z konfiguracją przekaźnika akumulatora pomocniczego w tej samej cenie, co inna bateria. Kluczową rzeczą jest to, że potrzebujesz dobrze działającego akumulatora i alternatora w samochodzie, który w razie potrzeby może dostarczyć wysoki prąd.

Najpierw odłącz akumulator samochodowy, ponieważ będziemy pracować na obu terminalach. Konfiguracja dodatkowego akumulatora w samochodzie jest dość prosta. Najpierw znajdź odpowiednie/bezpieczne miejsce do zamontowania drugiego akumulatora wewnątrz samochodu, bagażnika lub jeśli masz wystarczająco dużo miejsca, pod maską.

Zamontuj przekaźnik czuły na napięcie jak najbliżej akumulatora rozruchowego.

Użyj grubego przewodu (6 AWG), aby poprowadzić od dodatniego zacisku złącza akumulatora rozruchowego do przekaźnika czułego na napięcie. Następnie poprowadź kolejny kawałek grubego przewodu z przekaźnika napięciowego do akumulatora pomocniczego i bezpiecznie podłącz do niego zacisk akumulatora.

Przekaźnik czuły na napięcie powinien mieć przewód ujemny, który należy podłączyć do masy samochodu. Upewnij się, że ten przewód/złącze ma naprawdę dobry kontakt z masą.

Przy akumulatorze pomocniczym poprowadź gruby przewód (6 AWG) od ujemnego zacisku do części metalowego nadwozia samochodu i upewnij się, że ma solidne uziemienie (goły metal). Umieść odpowiednie złącza na obu końcach i sprawdź, czy uziemienie jest prawidłowe.

Uwaga: Upewnij się, że akumulator pomocniczy jest bezpiecznie zamocowany i nie będzie się poruszał podczas jazdy. Zalecam umieszczenie go w pojemniku na baterie, aby był bezpieczny i uporządkowany.

Gorąco polecam użycie izolatora baterii w twoim systemie, aby umożliwić proste i szybkie odłączenie zasilania. Umieść to w linii od zasilania bateryjnego do skrzynki bezpieczników kontrolera

Krok 7: Elementy systemu - zapłon

Większość samochodów uruchamia się po przekręceniu kluczyka w stacyjce. To następnie zasila różne komponenty w samochodzie, w tym ECU, solenoid rozrusznika, radio, wentylatory itp. Zastąpimy kluczowy system przekaźnikami, które możemy uruchomić z naszego Arudino.

Do wykonania tej pracy potrzebne będą schematy elektryczne samochodów, ale zwykle można je znaleźć w Internecie, wykonując szybkie wyszukiwanie w Google lub po prostu kupując je online. Zalecam zaopatrzenie się w kompletną instrukcję warsztatową samochodu, ponieważ będzie ona zawierała również inne informacje, w tym wszelkie wskazówki / porady dotyczące usuwania niektórych elementów. Ponadto zawsze dobrze jest mieć pod ręką informacje, aby zdiagnozować i naprawić wszelkie inne problemy z samochodem, które możesz napotkać.

Chciałbym też przyjrzeć się całkowitemu wyjęciu kolumny kierownicy (łącznie z lufą zapłonu, drążkiem kierunkowskazów itp.) z zębatki, aby dać ci więcej miejsca, plus zamienisz ją na elektroniczny układ wspomagania kierownicy, więc nie ma potrzeby starego setupu zostać w samochodzie.

Spójrz na schematy elektryczne samochodu dla zapłonu i określ przewody, które zasilają zapłon. Zwykle z akumulatora (IN) będzie połączony bezpiecznik dodatni, a następnie kilka innych przewodów, które zasilają komponenty samochodu na różnych etapach cyklu zapłonu/zasilania samochodu (Off, ACC, IGN1/Run, IGN2/Start). Sprawdź, które przewody są potrzebne, ponieważ w większości starszych samochodów będziesz potrzebować tylko przewodu dodatniego Main IN, przewodów IGN1/Run i IGN2/Start, aby uruchomić samochód, ale różni się to w zależności od samochodu.

Do samochodu, który miałem, potrzebowałem tylko 3 przewodów, ale dostarczały one duży prąd, więc potrzebowałem przekaźników o dużej wytrzymałości do przełączania obciążenia. Przekaźniki, z których korzystałem, to moduły 30A 5V, które znalazłem w Internecie. Chciałem czegoś, co poradzi sobie z dużym prądem ~30A i będzie mogło być przełączane po prostu sygnałem 5V.

W razie potrzeby podłącz przewody zapłonowe do przekaźników. Zawsze sprawdzaj, czy przekaźniki działają przed ich zamontowaniem, ponieważ miałem wiele przekaźników „martwych w dniu przyjazdu” w moim życiu polegającym na budowaniu rzeczy, które dosłownie kosztowały mnie dni mojego życia na znalezienie usterek.

Będziesz chciał, aby te przekaźniki działały na różne sposoby. Przekaźnik IGN1/Run w moim systemie włączał wszystkie samochody ECU, wentylator chłodnicy, moduł zapłonowy, co w pewnym sensie pozwalało mi włączać/wyłączać zasilanie samochodów. Po prostu bez zasilania modułu zapłonowego samochód przewróciłby się, ale nigdy by się nie uruchomił. Przekaźnik IGN2/Start był bezpośrednio podłączony do elektromagnesu rozrusznika, który faktycznie uruchamiał silnik. Z tym przekaźnikiem chciałbyś tylko chwilowo go włączyć, aby uruchomić samochód, ale gdy już zacznie działać, chciałbyś go odłączyć, aby nie zabić rozrusznika.

Testowanie

Obwód - Utwórz prosty przełącznik (IGN1/Run Relay) i obwód przycisku chwilowego (IGN2/Start) jako wejścia dla Arduino

Programowanie - Napisz prosty skrypt testowy, aby przetestować działanie obu przekaźników bez podłączonego akumulatora rozruchowego. Gdy masz pewność co do obwodu i skryptu, podłącz akumulator rozruchowy i przetestuj go. W tym momencie powinieneś być w stanie uruchomić i zatrzymać samochód.

Kamień milowy

W tym momencie powinieneś mieć;

  1. IGN1/Run przekaźnik przewodowy
  2. Okablowany przekaźnik IGN2/Start
  3. sterowanie pracą obu przekaźników poprzez Arduino
  4. obwód testowy do sterowania przekaźnikami
  5. być w stanie uruchomić samochód
  6. być w stanie wyłączyć samochód

Krok 8: Komponenty systemu - selektor biegów

Ponieważ w tej konstrukcji używamy samochodu z automatyczną skrzynią biegów, zmiana biegów jest stosunkowo łatwa, ponieważ wystarczy przesunąć dźwignię ruchem liniowym do określonych punktów.

Uwaga: zdecydowałem się użyć istniejącej dźwigni i nie łączyć się bezpośrednio z przewodem transmisyjnym, ponieważ chciałem, aby samochód wyglądał jak magazyn i wnętrze jak najbardziej normalne.

Jedyną trudną rzeczą, o której możesz pomyśleć, jest to, że większość automatycznych skrzyń biegów wymaga wciśnięcia przycisku przed przesunięciem dźwigni skrzyni biegów. Ponieważ używamy siłownika liniowego wyposażonego w śrubę ślimakową, możemy wykorzystać jego samoblokującą zdolność do utrzymywania dźwigni przekładni w miejscu, gdy ona się nie porusza. Jeśli chodzi o przycisk, możesz na stałe zablokować go w stanie „wciśniętym”.

Zastosowany tutaj siłownik liniowy musiał mieć wystarczający skok, aby zmienić pozycję z pozycji parkowania na bieg wsteczny, neutralny, a następnie na jazdę. W moim aucie było to około 100mm od miejsca, w którym montowałem siłownik. Siła potrzebna do poruszenia dźwigni była bardzo mała (<5 kg), więc ostatecznie użyłem siłownika o skoku 150 mm / 70 kg, ponieważ był w magazynie.

Aby zamontować podstawę siłownika, przyspawałem wspornik i przymocowałem go do części stalowej ramy, która była używana w konsoli środkowej. To pozwoliło mu się lekko obracać, gdy wysuwał się / cofał podczas skoku.

Do mocowania do dźwigni skrzyni biegów po prostu wyciąłem kilka kawałków stalowego płaskownika i użyłem kilku śrub, aby utrzymać go na miejscu. Nie jest mocno zaciśnięty wokół dźwigni, po prostu ją zawiera. To pozwala mu się poruszać i nie wiązać podczas ruchu.

Ustalając położenie siłownika użyłem potencjometru przesuwnego, który przesyłał sygnał analogowy z powrotem do mojego Arduino. Z jakiegoś płaskownika zrobiłem niestandardowe mocowanie garnka do siłownika. Następnie złożyłem wypustki suwaka garnków wokół śruby wspornika mocowania dźwigni skrzyni biegów. Działa, ale powinienem to zmienić, aby było to lepsze mocowanie do suwaka garnków.

Do zasilania siłownika użyłem sterownika silnika, który może poruszać się do przodu i do tyłu oraz być sterowany za pomocą mikrokontrolera. Użyłem sterownika silnika Sabertooth 2x32A firmy Dimension Engineering, ale możesz użyć wszystkiego, co działa podobnie. Pierwszy kanał będzie używany do sterowania siłownikiem wybieraka biegów, a drugi do sterowania siłownikiem hamulca. Okablowanie i konfiguracja tego sterownika silnika jest proste i dobrze udokumentowane. Podłącz przewód dodatni i ujemny akumulatora zgodnie z opisem i podłącz przewody siłowników do wyjścia silnika 1. Podłącz 0 V do uziemienia Arduino, a przewód S1 do pinu wyjścia cyfrowego.

Uwaga: Użyłem prostej konfiguracji szeregowej w tej kompilacji i wydawało się, że działa całkiem dobrze. Firma Dimension Engineering stworzyła również kilka bibliotek, dzięki którym komunikacja z ich sterownikami jest bardzo prosta. Mają też kilka prostych przykładów, które pomogą Ci szybko rozpocząć pracę.

Testowanie

Obwód - Aby przesunąć siłownik do przodu i do tyłu, stwórz prosty obwód z dwoma chwilowymi przyciskami jako wejściami. Jeden do wysuwania siłownika, a drugi do wsuwania siłownika. Daje to wtedy pewną kontrolę nad ustawianiem siłownika w pozycjach przekładni.

Programowanie - Napisz prosty skrypt do przesuwania siłownika do przodu i do tyłu oraz wyprowadzania wartości z potencjometru przesuwnego. Podczas uruchamiania skryptu zwróć uwagę na wartości potencjometrów dla pozycji biegu postojowego, wstecznego, neutralnego i jazdy. Będą one potrzebne, aby w pełnym kodzie powiedzieć siłownikowi o przejściu do tych pozycji.

Kamień milowy

W tym momencie powinieneś mieć;

  1. siłownik bezpiecznie zamontowany w samochodzie
  2. mocowanie wokół wybieraka biegów/siłownika
  3. sterownik silnika połączony z siłownikiem i Arduino
  4. sterowanie wysuwaniem/cofaniem siłownika poprzez Arduino
  5. obwód testowy do sterowania wysuwaniem/wsuwaniem siłownika
  6. znać wartości/pozycje potencjometrów dla każdej pozycji przekładni

Uwaga: Możesz również użyć obwodu przełącznika wielopozycyjnego, aby przetestować wejście selektora biegów w Arduino, gdy znasz pozycje. W ten sposób będziesz mógł skopiować kod selektora biegów bezpośrednio do gotowej bazy kodów działającego samochodu.

Krok 9: Elementy systemu - Hamulce

Image
Image

Zatrzymanie samochodu jest bardzo ważne, więc chcesz się upewnić, że zrobiłeś to dobrze. Hamulce w samochodzie są zwykle uruchamiane stopą, która w razie potrzeby może wywierać dużą siłę. W tej konstrukcji używamy kolejnego siłownika liniowego, który będzie działał na stopę. Siłownik ten musiał mieć dużą siłę (~30 kg), ale potrzebował tylko krótkiego skoku ~60 mm. Udało mi się uzyskać siłownik o skoku 100 mm / 70 kg, ponieważ był w magazynie.

Znalezienie odpowiedniego miejsca do zamontowania siłownika było trochę trudne, ale po kilku próbach i błędach znalazłem bezpieczną pozycję. Przyspawałem kawałek stalowego płaskownika z boku ramienia pedału hamulca i wywierciłem w nim otwór, w którym pociągnąłem śrubę od góry siłownika. Następnie przyspawałem obrotowy wspornik montażowy na drugim końcu siłownika do planu podłogi samochodu.

Określając położenie siłownika, użyłem przesuwnego potencjometru (takiego samego jak siłownik wybieraka biegów), który wysyłał sygnał analogowy z powrotem do mojego Arduino. Z jakiegoś płaskownika zrobiłem niestandardowe mocowanie garnka do siłownika. Następnie założyłem wypustki suwaka garnków wokół małej płaskiej wypustki, którą zamontowałem na końcu siłownika.

Do zasilania siłownika użyłem drugiego kanału sterownika 2x32A Sabertooth Motor Driver. Do sterowania obydwoma silnikami wystarczy użyć tylko jednego przewodu (S1).

Uwaga: Użyłem prostej konfiguracji szeregowej w tej kompilacji i wydawało się, że działa całkiem dobrze. Ten sterownik silnika można skonfigurować na wiele sposobów, więc wybierz preferowaną metodę.

Testowanie

Pozycjonowanie - Przed podłączeniem siłownika bezpośrednio do pedału hamulca będziesz chciał mieć pewne pojęcie o tym, jak daleko pedał musi przebyć, aby zaciągnąć hamulce. Wcisnąłem nogę na hamulce, aby zatrzymać samochód (przytrzymując stop, nie pełne hamulce). Następnie przesunąłem siłownik, aby wyrównać jego mocowanie połączenia ze spawanym mocowaniem hamulca. Zarejestrowałem wartość wyjściową potencjometru, dzięki czemu znałem pozycję maksymalnego wciśnięcia hamulca.

Zrobiłem to samo co powyżej dla pozycji hamulca.

Obwód - Aby przesunąć siłownik do przodu i do tyłu, stwórz prosty obwód z dwoma chwilowymi przyciskami jako wejściami. Jeden do wysuwania siłownika, a drugi do wsuwania siłownika. Daje to wtedy pewną kontrolę nad ustawianiem siłownika w pozycjach przekładni.

Programowanie - Napisz prosty skrypt do przesuwania siłownika do przodu i do tyłu oraz wyprowadzania wartości z potencjometru przesuwnego. Podczas uruchamiania skryptu zwróć uwagę na wartości potencjometru dla pozycji włączenia i wyłączenia hamulca. Będą one potrzebne, aby w pełnym kodzie powiedzieć siłownikowi o przejściu do tych pozycji.

Kamień milowy

W tym momencie powinieneś mieć;

  1. siłownik bezpiecznie zamontowany w samochodzie
  2. mocowanie pedału hamulca do siłownika
  3. sterownik silnika połączony z siłownikiem i Arduino
  4. sterowanie wysunięciem/wsunięciem siłownika poprzez Arduino
  5. obwód testowy do sterowania wysuwaniem/wsuwaniem siłownika
  6. znać wartości/pozycje potencjometrów dla pozycji wyłączenia i włączenia hamulca

Uwaga: W końcowym kodzie używam sygnału kontrolerów RC z kanału do kontrolowania, jak duży nacisk należy zastosować do hamulca proporcjonalnie do jego pozycji drążka. Dało mi to zakres od całkowitego wyłączenia do pełnego włączenia.

Krok 10: Elementy systemu - akcelerator

Teraz rozkręćmy te silniki i żeby to zrobić musimy podłączyć akcelerator. Ponieważ używamy samochodu bez „drive-by-wire”, w rzeczywistości będziemy ciągnąć za kabel, który jest podłączony do korpusu przepustnicy. Korpusy przepustnic mają zwykle silną sprężynę, która bardzo szybko zamyka motyla po zwolnieniu pedału przyspieszenia. Aby pokonać tę siłę, użyłem serwa o wysokim momencie obrotowym (~40kg/cm) do ciągnięcia kabla.

Przykręciłem to serwo na kawałku stalowego płaskownika i zamontowałem z boku konsoli środkowej za pomocą wsporników pod kątem prostym. Musiałem też kupić dłuższy kabel akceleratora (2m), ponieważ fabryczny kabel, który był używany w samochodzie, był za krótki. Dało mi to również dużo więcej opcji montażu, co zaoszczędziło mi dużo czasu.

Należy pamiętać, że te serwa o wysokim momencie obrotowym zwykle ciągną wyższe niż normalny prąd, więc upewnij się, że możesz je odpowiednio dostarczyć. Użyłem do tego regulowanego zasilacza 5V 5A, który z łatwością zapewnia wystarczający prąd do pracy z pełnym momentem obrotowym. Przewód sygnałowy z serwomechanizmu został następnie doprowadzony z powrotem do wyjścia cyfrowego Arduino.

Testowanie

Programowanie - Napisz prosty skrypt, aby obrócić serwo z pozycji wyłączonej akceleratora do pełnego włączenia (jeśli grasz). Dodałem parametr konfiguracyjny akceleratora, który ograniczałby wielkość ruchu serwa, aby umożliwić mi szybkie dostosowanie wrażenia akceleratora.

Kamień milowy

W tym momencie powinieneś mieć;

  1. serwo bezpiecznie zamontowane
  2. kabel akceleratora podłączony od korpusu przepustnicy do wahacza serwomechanizmu;
  3. zasilacz podłączony, aby zapewnić wystarczający prąd do serwomechanizmu
  4. sterowanie pozycją serwa przez Arduino
  5. znane pozycje dla serwomechanizmu dla akceleratora wyłączonego i pełnego włączenia

Uwaga: W końcowym kodzie używam sygnału kontrolerów RC z kanału do kontrolowania, jak duży ruch należy zastosować do akceleratora proporcjonalnie do jego pozycji drążka. Dało mi to zakres od całkowitego wyłączenia do pełnego włączenia z parametrem konfiguracji akceleratora jako ogranicznikiem.

Krok 11: Komponenty systemu - układ kierowniczy

Image
Image
Komponenty systemu – układ kierowniczy
Komponenty systemu – układ kierowniczy

Możliwość kierowania samochodem tam, gdzie chcemy, aby jechał, jest bardzo ważna. Większość samochodów wyprodukowanych w przeszłości (przed ok. 2005 r.) wykorzystywała hydrauliczne wspomaganie kierownicy, aby skręcanie kierownicy było bardzo lekkie dla użytkownika. Od tego czasu, ze względu na technologię i proszenie producentów samochodów o zmniejszenie emisji, opracowali elektroniczne systemy wspomagania kierownicy (EPS). Systemy te wykorzystują silnik elektryczny i czujnik momentu obrotowego, aby pomóc kierowcy w skręcaniu kół. Dzięki usunięciu hydraulicznej pompy wspomagania układu kierowniczego silnik jest teraz mniej obciążony, co z kolei pozwala na jazdę przy niższych obrotach silnika (redukcja emisji). Więcej o systemach EPS można przeczytać tutaj.

Do sterowania moim małym samochodem użyłem elektronicznego wspomagania kierownicy (EPS) z Nissana Micra z 2009 roku. Kupiłem go od złomowiska samochodowego za 165 USD. Zamontowałem ten moduł EPS do istniejących śrub mocujących kolumnę kierownicy za pomocą mocowania, które wygiąłem z jakiegoś stalowego płaskownika.

Musiałem również kupić dolny wał kolumny kierownicy (~65 USD), aby połączyć EPS z wypustem zębatki kierownicy. Aby to zmieściło się w moim aucie zmodyfikowałem wał kolumny kierownicy poprzez wycięcie i spawanie wielowypustu oryginalnej kolumny kierownicy, który wyciąłem z Hondy do tego wału.

Do zasilania/sterowania silnikiem EPS z lewej lub prawej strony użyłem sterownika Sabertooth Motor Driver 2x60A firmy Dimension Engineering. Użyłem tylko jednego z kanałów, ale musisz upewnić się, że używasz sterownika silnika, który może dostarczać ~60A+ w sposób ciągły, pracować w kierunku przód/tył, a także może być sterowany za pomocą mikrokontrolera.

Aby poznać pozycję kąta skrętu, zaprojektowałem niestandardowy czujnik pozycji kąta skrętu. Większość samochodów korzysta z wersji cyfrowej, która działa przez magistralę CAN, co nie przeszkadzało mi w inżynierii wstecznej. Do mojego analogowego czujnika położenia użyłem 2 potencjometrów wieloobrotowych (5 obrotów), 3 kół pasowych paska rozrządu, paska rozrządu i aluminiowej płyty do montażu elementów. W każdym kole zębatym wierciłem i gwintowałem otwory pod wkręty dociskowe, a następnie na garnkach i EPS obrabiałem płaskowniki, aby zapobiec swobodnemu obracaniu się kół zębatych. Zostały one następnie połączone za pomocą paska rozrządu. Gdy kierownica byłaby wyśrodkowana, garnki miałyby 2,5 obrotu. Przy pełnej blokadzie skrętu w lewą stronę będzie na 0,5 obrotu, a na pełnej prawej na 4,5 obrotu. Te potencjometry zostały następnie podłączone do wejść analogowych Arduino.

Uwaga: Powodem użycia dwóch puli było to, że jeśli pasek się ześlizgnął lub pękł, mogłem odczytać różnice między doniczkami i wyrzucić błąd.

Testowanie

Pozycjonowanie - Przed podłączeniem EPS do dolnej kolumny kierownicy i kierownicy samochodu najlepiej przetestować kod pod kątem odłączenia EPS i czujnika kąta skrętu.

Obwód - Aby obrócić EPS w lewo lub w prawo, stwórz prosty obwód z dwoma chwilowymi przyciskami jako wejściami. Jeden, aby obrócić EPS w lewo, a drugi, aby obrócić w prawo. To da ci pewną kontrolę nad pozycjonowaniem EPS w pozycjach sterowania.

Programowanie - Napisz prosty skrypt, aby ustawić kierownicę na środku, z lewej i prawej strony. Będziesz chciał kontrolować ilość mocy, jaka jest przekazywana do silnika, ponieważ odkryłem, że 70% było więcej niż wystarczające, aby skręcić kołami, gdy samochód był nieruchomy. Dostarczanie mocy do EPS będzie również wymagało krzywej przyspieszania/zwalniania, aby płynnie pozycjonować układ kierowniczy.

Kamień milowy

W tym momencie powinieneś mieć;

  1. Bezpiecznie zamontowany elektroniczny układ wspomagania kierownicy (EPS)
  2. dolna kolumna kierownicy zmodyfikowana do jazdy z EPS na drążek kierowniczy
  3. czujnik kąta skrętu kierownicy zapewniający kąt skrętu drążka kierowniczego do Arduino
  4. sterownik silnika połączony z EPS i Arduino
  5. sterowanie obrotem EPS poprzez Arduino
  6. obwód testowy do kontroli kierunku obrotu EPS
  7. obróć kierownicę samochodu pełną lewą blokadą, środkową i pełną prawą blokadą za pomocą Arduino

Krok 12: Elementy systemu - odbiornik/nadajnik

Elementy systemu - odbiornik/nadajnik
Elementy systemu - odbiornik/nadajnik

Teraz do zabawy, która łączy całą pracę, którą wykonałeś do tej pory. Pilot zdalnego sterowania to pierwsza faza usuwania ludzkiego komponentu prowadzenia pojazdu, ponieważ polecenia będą teraz wysyłane do odbiornika, a następnie wprowadzane do Arduino w celu podjęcia działań. W drugiej fazie tej serii zastąpimy nadajnik/odbiornik człowieka i RC komputerem i czujnikami do kontrolowania, dokąd zmierza. Ale na razie przyjrzyjmy się, jak skonfigurować nadajnik i odbiornik RC.

Aby sterować komponentami, które do tej pory zbudowaliśmy w samochodzie, musimy podłączyć kanały wyjściowe odbiornika RC do Arduino. W tej konstrukcji wykorzystałem tylko 5 kanałów (akcelerator i hamulec na tym samym kanale), układ kierowniczy, selektor biegów (przełącznik 3-pozycyjny), Ignition stage 1 (zasilanie/praca samochodu) i Ignition stage 2 (rozrusznik samochodu). Wszystkie zostały odczytane przez Arduino za pomocą funkcji PulseIn tam, gdzie było to wymagane.

Testowanie

Programowanie - Napisz prosty skrypt, który odczyta wszystkie kanały odbiorników, których używasz do sterowania systemami wewnątrz samochodu. Gdy zobaczysz, że wszystkie kanały odbiornika działają poprawnie, możesz rozpocząć integrację utworzonego wcześniej kodu z kodem odbiornika. Dobrym miejscem do rozpoczęcia jest system zapłonu. Zastąp odczytywanie danych wejściowych z przełącznika i przycisku w obwodzie testowym, który utworzyłeś, na kanały odbiornika RC, które skonfigurowałeś do sterowania układem zapłonowym (IGN1/Run i IGN2/Start).

Uwaga: Jeśli używasz nadajnika Turnigy 9x tak jak ja, będziesz chciał go rozebrać i przesunąć kilka przełączników. Zamieniłem chwilowy przełącznik „Trainer” na przełącznik „Throttle Hold”, aby sterować wejściem IGN2/Start. Zrobiłem to, ponieważ nie można było zaprogramować przełącznika „Trainer” jako przełącznika pomocniczego, ale można było za pomocą przełącznika „Throttle Hold”. Posiadanie chwilowego przełącznika dla wejścia IGN2/Start pozwoliło mi nie niszczyć rozrusznika, ponieważ tylko zatrzasnąłby przekaźnik w stanie wysokim podczas

Kamień milowy

W tym momencie powinieneś mieć;

  1. Wszystkie wyjścia odbiornika podłączone do Arduino
  2. Arduino w stanie odczytać wejścia dla każdego kanału
  3. Każdy kanał jest w stanie kontrolować każdy element samochodu (hamulce, wybierak biegów itp.)

Krok 13: Program końcowy

Ta część zależy od Ciebie, ale poniżej znajdziesz link do mojego kodu, który pomoże Ci jako podstawowy punkt wyjścia do uruchomienia samochodu.

Zalecana: