Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

DIY SEGWAY - Elektryczny Pojazd Balansujący

felekfala 16 Sep 2012 23:24 59262 76
e-mierniki
  • #61
    aneuron
    Level 12  
    Zastanawia mnie tylko jedno-co by byłow przypadku gdyby sterowanie "zwariowało" i np. jedno koło się przyblokowało,albo źle było wysterowane, a drugie je znacznie przegoniło i wtedy... totalnie tracimy kontrolę i można gwałtownie skręcić np. z chodnika wprost pod samochód... jakoś zabezpieczaliście się na takie wypadki? oprócz uP macie jakieś analogowe zabezpieczenia na "najgorszy przypadek", wtedy kiedy "głupieje" uP?
    To trochu niebezpieczne się wydaje w uzytkowaniu poza włąsnym podwórkiem...

    8850 wrote:

    2. Czy w takim przypadku jest możłiwe zbudowanie strony/portaliku/forum/systemu kontroli wersji dokumentacji dla osób które będą chciały budować polskiego Waszego segwaya?

    W C oprogramowaliście tego swojego Segway'a?

    Tutaj chyba spokojnie kody źródłowe moglibyście trzymać:
    SourceForge - Find, Create, and Publish Open Source software for free
    Nie wiem jakie macie doświadczenia z tym portalem, ale nawet jak się ma własną stronę, a coś chce upublicznić kody źródłowe, czy dokumentację dla wszystkich, tam można trzymać i rozwijać wspólnie oprogramowanie, bo narzędzia do kontroli wersji są tam zaimplementowane.

    No ale to bardziej kwestia, czy można coś upublicznić, czy nie, jeśli to np. powstało za pieniądze z uczelni, ale sporo własnej pracy w to włożyły rózne osoby pracujące nad tym projektem...

    BTW: Takie właśnie zapodawanie na "elekrodę" tylko binarnych wersji-bez kodu źródłowego- do wrzucenia na uP, kończy się tym, że ktoś "daje" niby jakieś oprogramowanie, ktoś robi układ według schematu, myśląc, że wyjdzie go to taniej i bedzie lepsze niż z Chin i będzie miał coś fajnego, bo swojego, a po jakims czasie dostaje na wyświetlaczu komunikat.. że to DEMO :D A w binarce telefon do "stwórcy" tego czegoś tylko może sobie przeczytać, i jak zapłaci to mu łaskawie będzie program działał dalej, bo koleś wtedy podsyła wersję bez ograniczenia czasowego :)
    Powinno to być tępione bezwzględnie i propagowane,narzucane publikowanie kodów źródłowych, jak ktoś udostępnia coś do wgrania na uP...

    Ale to elektroda, a internet to jungla ;)
  • e-mierniki
  • #62
    djoy
    Level 15  
    Quote:
    W C oprogramowaliście tego swojego Segway'a?

    Tak program Segway'a jest napisany w języku C.
  • e-mierniki
  • #63
    aneuron
    Level 12  
    felekfala wrote:

    Układ posiada akcelerometr BMA180 firmy BOSCH oraz żyroskop L3G4200D firmy ST.

    Jeśli chodzi o ten żyroskop, to wybór akurat tego czym był podyktowany? Gdzieś udało się Wam sensowną dokumentację do niego zdobyć?
    Akurat poszukuję jakiegoś prostego "gyro" i najlepiej jakby były jakieś biblioteki w C do obsługi na uP. Będzie to uzyte nie w "balanserze" a 3kołowcu, w którym będą 2a silniki BLDC z Hallami za pomocą których mogę zmierzyć przebytą drogę, a żyroskop jest mi potrzebny do określenia kątu, dzięki czemu mogę określić przybliżone położenie bez żadnych niedokładnych GPS itp.
    Pojazd będzie się poruszał po poziomym w miarę równym terenie na obiekcie sportowym, więc tylko kąt obrotu wokół pionu jest mi potrzebny...
    Tyle że mając zyroskop 3osiowy kąty w 3D są pewnie znane więc dowolną trajektorię mogę wyznaczyć jeśłi dodać do tego przesunięcie znane z Halli w BLDC...
    Może to "gyro" by było akurat, jeśli cena nie jakaś zaporowa i w miarę prosty interface w oprogramowaniu?

    Update: Dokumentacja jest cakiem "opasła" do tego L3G4200D ;)
    Tutaj widzę jakis gotowy moduł takiego żyroskopu: Gyroscope Module 3-Axis L3G4200D from Parallax
    Rozumiem jakiś gotowy moduł nabyliście podobny do tego powyżej?

    Przykład w C zastosowania SPI w AVR znalazłem tutaj:
    Using SPI on an AVR
    Sa tam też linki do not aplikacyjnych Atmela i jakieś biblioteki do SPI.
    Przez I2C się z nim komunikujecie, czy poprzez SPI?
  • #64
    felekfala
    Level 19  
    Po kolei :)
    8850 wrote:
    Pytanie do autorów projektu:
    1. CZy projekt i częsci projektowe mogą zostać opublikowane na licencji opensource lub jakieś innej publicznej nonprofit która pozwoli na zoptymalizowanie projektu przez innych zainteresowanych osób które będą chciały przerobić/ulepszyć elementy w taki sposób aby powstała społeczność osób nieakademickich dokładających swoje doświadczenie i wiedzę do kolejnych modeli prototypów? W ten sposób chociażby wyeliminujemy głupie docinki i komentarze miernych i biernych słabo wyedukowanych użytkowników elektrody.

    2. Czy w takim przypadku jest możłiwe zbudowanie strony/portaliku/forum/systemu kontroli wersji dokumentacji dla osób które będą chciały budować polskiego Waszego segwaya?

    Ponieważ w tym roku ukończyliśmy uczelnię każdy z nas poszedł już do pracy więc wątpię, żeby ktoś miał czas angażować się w taki projekt, ale przekażę to kolegom.

    aneuron wrote:

    Zastanawia mnie tylko jedno-co by byłow przypadku gdyby sterowanie "zwariowało" i np. jedno koło się przyblokowało,albo źle było wysterowane, a drugie je znacznie przegoniło i wtedy... totalnie tracimy kontrolę i można gwałtownie skręcić np. z chodnika wprost pod samochód... jakoś zabezpieczaliście się na takie wypadki? oprócz uP macie jakieś analogowe zabezpieczenia na "najgorszy przypadek", wtedy kiedy "głupieje" uP?
    To trochu niebezpieczne się wydaje w uzytkowaniu poza włąsnym podwórkiem...

    Pojazd posiada zabezpieczenie które opiszę w ten sposób. W podłodze są dwa przyciski podłączone równolegle. Jeśli chociaż jeden z nich jest wciśnięty to regulator prądu działa w pełnym zakresie roboczym. Gdy żadne z przycisków nie jest wciśnięty regulator prądu jest ograniczony do kilkunastu procent prądu roboczego.
    Na takie zabezpieczenie zdecydowaliśmy się po różnych próbach w tym z zabezpieczeniem odłączających kompletnie sterowanie częścią silno-prądową, okazało się ono najlepszym kompromisem.
    aneuron wrote:
    W C oprogramowaliście tego swojego Segway'a?

    Program w całości napisany w C plus program do wizualizacji odbieranych danych w LabVIEWu.
    aneuron wrote:
    jeśli chodzi o ten żyroskop, to wybór akurat tego czym był podyktowany? Gdzieś udało się Wam sensowną dokumentację do niego zdobyć?

    Na taki moduł zdecydowaliśmy się po rozmowach z Panem ze sklepu Robodudes.
    U którego kupiliśmy właśnie takie moduły akcelerometru i żyroskopu i są to jedyne płytki które zakupiliśmy. Dokumentacja i i procedury obsługi po przeszperaniu internetu dało się zdobyć.
    aneuron wrote:
    Przez I2C się z nim komunikujecie, czy poprzez SPI?

    Akcelerometr i żyroskop przez SPI.
  • #65
    aneuron
    Level 12  
    felekfala wrote:

    Na taki moduł zdecydowaliśmy się po rozmowach z Panem ze sklepu Robodudes.

    Kiedyś trafiłem do tego sklepu jak szukałem akcelerometru.
    Rzeczywiście ceny tych żyroskopów nie są tam "zaporowe", więc jak najbardziej poprzez SPI się spróbuje czytać cyfrowo położenie w 3D i kreślić trajektorię pojazdów EV, bo irytują mnie duże rozrzuty odczytu wysokości z GPSa i dzieki temu "gyro" + Halle powinno ładnie to śmigać ;)
    W kilku projektach brakowało mi właśnie sensownego pomiaru kierunków, a ten gyro chyba rzeczywiście jest niezły no i cena OK.

    Dzieki za info.
    Pozdr.
  • #66
    sq1gqp
    Level 23  
    Chciałbym zrobić coś takiego (na początek wystarczy mi sam fakt stania) na fuzzy logic w arduino. Mam natomiast dylemat, jakie parametry wejściowe trzeba przetwarzać na wejściu? Czy wystarczy sam kąt? Widziałem w projekcie lego, że analizują też prędkość kątową ale nie bardzo wiem o którą prędkość chodzi.
  • #67
    felekfala
    Level 19  
    W wersji podstawowej wystarczy sam kat. By uzyskać lepsze rezultaty na różnym podłożu na pewno dobrze zastosować pomiar prędkości i regulator prędkości kątowej kół, można też tak jak my zastosować dodatkowo kontrolę prądów, co zwiększa bezpieczeństwo tranzystorów.
    W każdym bądź razie na początek najlepiej wykonać najprostszy układ czyli tylko z pomiarem kąta, a w miarę jak Ci będzie wszystko działało rozbudowywać jego złożoność.
  • #68
    sq1gqp
    Level 23  
    Tak właśnie chcę zrobić. Mam arduino mega i 9dof ahrs. Wszystko ładnie działa (oprogramowane) ale teraz szukam do tego dobrego zastosowania :). Mówiąc pomiar prędkości masz na myśli prędkość urządzenia względem ziemi a prędkość kątowa to prędkość obliczona ze zmiany kąta, czy dobrze myślę?
    Motor Shield mierzy pobór więc zrobię bezpiecznik :)
  • #70
    sq1gqp
    Level 23  
    Podłączyłem to, stosuję "pomiar" jednej osi przy pomocy razor'a ale niestety taki robocik nie wstaje, rzuca w lewo i w prawo. Zastanawiam się dlaczego, albo termy są źle wyregulowane (próbowałem kombinować z tym) albo algorytm za wolny...
    Czy są jakieś specjalne zalecenia dotyczące silników? Stosuję dwa silniczki 12VDC z wbudowanymi przekładniami (dla podniesienia momentu). Może muszą być szybsze?
    Czy czujnik AHRS powinien być umieszczony w osi silników czy może być na szczycie (u góry) wahadła?
    Mój segway jest malutki, ma "unosić" jedynie arduoino mega.
  • #71
    felekfala
    Level 19  
    Ciężko mi odpowiedzieć bo nie znam Twojego sprzętu.
    Ważną sprawą jest to by estymowany kąt był dobrze odfiltrowany od zakłóceń, które mogą uniemożliwić pracę.
    W zasadzie czujniki i tak mierzą kąt więc nie powinno mieć wielkiego znaczenia ich położenie, ale im dalej od osi tym drgania na pewno większe.
    Nie znam Twojego sprzętu więc nie wiem jaka jest prędkość silników, w każdym bądź razie o przyśpieszeniu decyduje moment, przekładnie dobierz dla jakieś maksymalnej prędkości pojazdu.
  • #72
    sq1gqp
    Level 23  
    Używam tego http://www.youtube.com/watch?v=WuHRCnpcsDQ
    Ma fajnie działający zintegrowany soft, po skalibrowaniu jest zaskakująco precyzyjny.
    Spróbuję przesunąć czujnik bliżej ośki i pozmieniać termy tak, żeby mocno reagowały na nieduże wychylenia. Mam wrażenie, że przy przeskoczeniu przez środek sterownik nie zdąża zadać odwrotnego kierunku i wypuszcza wahadło zbyt daleko centrum.
  • #73
    slawko_k
    Level 34  
    Ja w swoim robociku balansującym odczytuje co 10ms i stoi a nawet jeździ rc.
    Czujniki mam z 5-6cm nad osią obrotu kół. W przypadku żyroskopów ma to niewielkie znacznie ale akcelerometr im bliżej osi tym lepiej
  • #75
    elpo1231
    Level 1  
    Mam pytanie, czy możecie wrzucić schematy elektroniki z tego projektu?
  • #77
    Freddy
    Level 43  
    Schematy jak i wersja w C są ogólnie dostępne w sieci. Wystarczy Google i minuta poszukiwań.