Skocz do zawartości

[Line Follower] Mark I


Pomocna odpowiedź

Cześć!

To mój pierwszy post tutaj także wypadało by się przedstawić. 🙂 Jestem Marcin, w tym roku zacząłem studiować Automatykę i Robotykę w Zielonej Górze. Mam nadzieję, że pomożecie mi z projektem mojego pierwszego robota.

Jakiś czas temu zainteresowałem się elektroniką i na start kupiłem sobie zestaw startowy z Arduino UNO oraz płytką stykową i zacząłem programować w środowisku Arduino. Później na kanale Make Magazine obejrzałem filmik na którym jeden z redaktorów wgrywał program napisany w IDE Arduino do oddzielnego mikrokontrolera, zaciekawiło mnie to na tyle, że zacząłem szukać informacji na temat AVRów, po zebraniu informacji kupiłem sobie programator USBasp oraz mikrokontroler Atmega8, no i zacząłem programować go już w C.

Do tej pory moje "projekty" nie wychodziły poza płytkę stykową, nawet nie myślałem o tym, żeby funkcjonujący układ przenieść na płytkę drukowaną, aż do niedawna - stwierdziłem, że najwięcej nauczę się właśnie dzięki większemu projektowi tj. robotowi klasy line follower.

Obecnie robot jest we wczesnej fazie projektowej, tj. mam kupione niektóre części, gotowy schemat "płyty głównej".

Części jakie mam zamiar zastosować

wycięta blacha aluminiowa jako rama

Płytki drukowane wykonane metodą termotransferową

2 x silniki Micro Motors HL149 z przekładniami 21:1 - wybrałem je ze względu na cenę

2 x koła Lego o średnicy 42mm, gumowa opona, plastikowa felga pasująca na wał przekładni

scalony mostek H: L293DNE - mierzyłem prąd przy zablokowanym wale silnika i wyszło około 600mA, więc ten mostek wystarczy, poza tym mam go u siebie w domu.

mikrokontroler Atmega8 - nie sądzę żebym na początek potrzebował więcej pinów IO

Czujniki linii

Myślę o CN70, ponieważ jeszcze nigdy nie lutowałem elementów SMD (mam na myśli KTIR0711S), a nawet lutowanie THT sprawia mi jeszcze trochę kłopotów.

Nie zastosuję komparatorów aby ułatwić sobie zadanie, ale pięć czujników, które chcę zastosować zajmie mi prawie wszystkie linie ADC w Atmedze.

Czujnik odległości

Niekoniecznie zastosuję ale jeśli to któryś z Sharpów, jeszcze nieuwzględniony na schemacie.

Akumulator

Prawdopodobnie kupię akumulator Li-Po 7,4V około 1000mAh

- pomiar napięcia na akumulatorze poprzez ADC

regulator napięcia

Na schemacie mam liniowy regulator napięcia L7805 (bo mam go na stanie), ale zastanawiam się nad przetwornicą impulsową.

W pełni naładowany akumulator powinien mieć 8,4V, poza tym, krytyczne 7V to już skrajnie rozładowany akumulator, więc chyba nie będzie problemu jeśli zastosuję właśnie L7805 (wg. noty katalogowej spadek napięcia 2V).

Interakcja z użytkownikiem

3 diody LED

- jedna sygnalizująca włączenie układu

- dwie sterowane przez mikrokontroler

2 przyciski

- przycisk reset

- przycisk podłączony do mikrokontrolera

pomysł:

Zamiast przycisku i diod zastosować moduł Bluetooth (HC-06 - komunikacja po USART, czekam na przesyłkę HK) oraz aplikację na Androida.

Do zrobienia na początek:

Schemat modułu z czujnikami

Projekt PCB płyty głównej oraz modułu z czujnikami.

Oto schemat, który przygotowałem:

Czy wszystko jest okej? Wprowadzić jakieś zmiany?

Będę aktualizował temat wraz z postępem prac nad robotem. Dzięki z góry za uwagi. 😉

Link do komentarza
Share on other sites

Brakuje kondensatora za dławikiem od ADC.

Dioda zasilania odwrotnie.

Kondensator 100nF do Aref i do masy. Będziesz miał stabilniejsze napięcie odniesienia, ale tak jak jest teraz też nie jest źle.

Wyprowadź sobie RS232 do debugowania, akurat masz wolne piny RXD i TXD. Albo przewidź na płytce możliwość dołączenia modułu Bluetooth.

Rezystory do CNY70 dasz na płytce z modułem? Musisz rozbijać układ na dwa moduły?

P.S. OD razu widać gigantyczną różnicę gdy za projekt zabiera się student, aż miło się czyta takie posty. Powadzenia projektowaniu/budowaniu/programowaniu.

Link do komentarza
Share on other sites

Załączam poprawiony schemat.

Dodałem złącze do modułu Bluetooth, ewentualnie do RS'a.

Co do modułowości robota: wolałbym w swoim pierwszym robocie mieć oddzielnie ramę/pcb - nie mam narzędzi do cięcia laminatu i nie wyobrażam sobie jak bym to zrealizował, a że mam możliwość załatwienia wyciętej blachy aluminiowej praktycznie za darmo to pójdę tą drogą (Chociaż nie wiem jeszcze jakiej grubości użyć).

W tej chwili robota wyobrażam sobie podobnie do "parteru" tej platformy:

Rama z aluminium, na niej zamontowane silniki, a do tego przykręcone pcb z mikrokontrolerem, a z przodu moduł z CNY70.

Link do komentarza
Share on other sites

Czujniki linii

Myślę o CN70, ponieważ jeszcze nigdy nie lutowałem elementów SMD (mam na myśli KTIR0711S), a nawet lutowanie THT sprawia mi jeszcze trochę kłopotów.

)

Lutowanie Ktirów jest banalne, naprawdę! Praktycznie nie jest to trudniejsze niż lutowanie THT:)

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Lutowanie Ktirów jest banalne, naprawdę! Praktycznie nie jest to trudniejsze niż lutowanie THT:)

Co prawda CNY70 mam w domu, ale skoro mówisz, że jest tak prosto to na pewno nie zaszkodzi spróbować. Jak będę coś zamawiał w elektronicznym to kupię też parę KTIR0711S, a może i nawet oporniki SMD. 😉

Edycja:

Schemat gotowy.

Jedno pytanie odnośnie Eagle: Jeśli ta listwa czujników jest oddzielnym modułem czy powinienem ją robić w oddzielnym pliku? Bo z tego co się orientuje nie ma możliwości korzystania z arkuszy w Eagle Light, tak?

Jeśli wszystko jest w porządku to przede mną to czego się najbardziej boję: zaprojektowanie płytki PCB.

Płytkę będę projektował z zamiarem wykonania jej w domu metodą termotransferu na jednostronnym laminacie. Na pierwszy ogień najprawdopodobniej pójdzie listwa z czujnikami jako ten prostszy element.

Edycja 2:

Pierwszy projekt płytki chyba gotowy:

Rozmiar płytki z czujnikami: 30mm x 53mm, chyba zbyt mała, co?

Link do komentarza
Share on other sites

Moja mała propozycja dotycząca złącza RX/TX pod BT. Obok tego złącza zrób sobie jakiś znacznik, np. kwadratową przelotkę (w Eagle'u pod nazwą 'via'). Taki sam znacznik zrób sobie później na płytce BT. Po co? Chodzi mi po głowie taki przypadek, że w pośpiechu odwrotnie podłączasz moduł. Akurat niefortunnie pasuje wtedy, wg Twojego schematu, żeby pomylić 5V z GND. Może to nie mieć znaczenia i nic się nie stanie, a może się coś usmażyć... Kiedyś odwrotnie wpiąłem zasilanie do układu i stabilizator po 2-3 sekundach zostawił mi ładnego bąbla na palcu 😋 Pamiętając o tym nawet w Snuffiem mam taki znacznik przy wtyku dla alternatywnego zasilania (stabilizatorów, w razie jak przetwornica odmówi współpracy).

Decyzja należy do Ciebie, ja tylko podsuwam małą radę 🙂

Link do komentarza
Share on other sites

Jeśli chodzi o wyeliminowanie odwrotnego podłączenia to do głowy przychodzicmi zastosowanie takich gniazd i wtyczek jak te stosowane w komputerowych wentylatorach (402 / hut), rozstaw 100 milsów jak goldpiny.

Link do komentarza
Share on other sites

Tak, wiem. Do zasilania mam właśnie kupione takie 2-pinowe gniazda i wtyczki (teraz wiem, że nie do końca mi są potrzebne bo LiPo mają inne złącza), ale teraz pisałem o zastosowaniu 4 pinowego złącza tego typu, aby zabobiegać odwrotnemu podłączeniu modułu bluetooth. 😉

Ps. KTIRy zamówione (sztuka za 1,46pln 😉)

[ Dodano: 20-11-2012, 17:50 ]

Jako, że mam niezłe problemy ze stworzeniem projektu pcb załączam to co mi się udało zrobić do tej pory. Już nie ma tak kolorowo jak w przypadku listewki z czujnikami niestety.

na sam początek poprawiony schemat:

płytka:

Na płytce użyłem jednego kondensatora ceramicznego smd (pod atmegą) oraz jednego rezystora (przy przycisku) w obudowach 1206 bo wydawało mi się to wygodne.

10 zworek (😳):

Nie wiem jak je pokazać w bardziej przejrzysty sposób.

Zastanawiam się czy nie zastosować bootloadera i zamiast złącza 10-pinowego zastosować gniazdo B mini USB, co by odciążyło troszkę płytkę. Co myślicie o tym pomyśle? Stosował ktoś z Was AVRUSBBoot?

Polecicie może jakiś kurs na temat projektowania płytek PCB? (nie koniecznie w Eagle / nie koniecznie po polsku, chodzi mi raczej o aspekty takie jak układ elementów, prowadzenie ścieżek - jak widać średnio mi to idzie)

Link do komentarza
Share on other sites

Polecicie może jakiś kurs na temat projektowania płytek PCB? (nie koniecznie w Eagle / nie koniecznie po polsku, chodzi mi raczej o aspekty takie jak układ elementów, prowadzenie ścieżek - jak widać średnio mi to idzie)

Trochę materiałów do poczytania na temat projektowania PCB:

http://www.elektroda.pl/rtvforum/viewtopic.php?t=1809089&sid=bb70a67f3914bcc630db6f4efb822de3

  • Lubię! 1
Link do komentarza
Share on other sites

Dzięki za materiały na temat projektowania PCB. (Jest tam nawet jeden artykuł od Dave'a z EEVBlog, który oglądam od czasu do czasu)

Posiedziałem troszkę nad płytką, oto efekt:

Jestem zadowolony, bo udało mi się ograniczyć liczbę zworek z 11 do 6, rozmiar płytki też zdecydowanie się zmniejszył. Nie prowadzę już tej jednej ścieżki pomiedzy pinami Atmegi, to chyba też in plus.

Mam do Was kilka pytań:

W mojej drukarce laserowej mam zamiennik tonera, drukując ten projekt płytki widzę bardzo duże nierówności w druku, to na pewno będzie miało wpływ na przeżerki, więc chyba lepiej nie korzystać z niej do termotransferu? Oryginalny toner kosztuje 200zł (zamiennik około 50zł, drukując tekst nie wiedziałem, że taki problem występuje) , więc chyba będę zmuszony korzystać z punktu ksero.

Wybierając przełącznik do projektu wybrałem biblioteczny najzwyklejszy SPDT z odstępem 100 mils, znalazłem taki na Botlandzie, ale w opisie pisze o Obciążalności styków na poziomie 0,5A, oczywiście na "chłopski rozum" wydaje mi się, że to dość zaniżona wartość, czy stosujecie takie przełączniki u siebie w robotach?

Link do komentarza
Share on other sites

Czy nie zrobiłeś za małego odstępu między polygonami a ścieżkami?

I drugie pytanie. Czy opłaca Ci się ciągnąć złącze do UARTu przez całą płytkę? A gdybyś zrobił to złącze gdzieś obok tego przycisku i pinu reset?

Link do komentarza
Share on other sites

Czy nie zrobiłeś za małego odstępu między polygonami a ścieżkami?

I drugie pytanie. Czy opłaca Ci się ciągnąć złącze do UARTu przez całą płytkę? A gdybyś zrobił to złącze gdzieś obok tego przycisku i pinu reset?

Zwiększając Isolate, Spacing lub Width w opcjach polygonu ścieżki przestają przechodzić pomiędzy pinami układów scalonych więc chyba jest w sam raz.

A co do UARTU: może troszkę zapatrzyłem się na Arduino i kładąc listwy goldpin chciałem aby były przy bokach płytki. Teraz już to poprawiłem na płytce i zostały tylko 4 zworki i rozmiar znowu się zmniejszył 😉

Skąd najlepiej zamawiać akumulatory LiPo i ładowarkę? 🙂 Chciałbym zmieścić się w 100zł (jest w ogóle taka opcja?) za akumulator 2s +-800mAh + ładowarka

Link do komentarza
Share on other sites

W hobbykingu masz bardzo tanio spokojnie w 100zł sie zmieścisz ( z tego co ja pamiętam kupiłem ładowarkę i lipola 800mah za ok 60zł, bez przesyłki), ale niestety musisz płacić za przesyłkę i czekać na nią ok 3 tygodnie.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.