Skocz do zawartości

Nawyk

Użytkownicy
  • Zawartość

    2072
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    126

Posty napisane przez Nawyk


  1. Zarówno rama, jak i obudowa są wyyrzeźbione z aluminium na CNC. Na temat kwestii finansowych nie mogę się wypowiadać, bo to komercyjny projekt. Weź tylko pod uwagę, że oprócz mechaniki jest tam jeszcze komputer PC (i5, 8GB RAM, 256GB SSD), czujniki RGB-D, GPS, IMU, opcjonalnie LIDARy, spora bateria... To wszystko będzie miało odzwierciedlenie w cenie. Gdyby ktoś był zainteresowany współpracą/wyceną, to zapraszam do kontaktu oficjalnymi kanałami: http://engineering.accrea.com/contact/

    Dodam, że na zdjęciu jest jeden z pierwszych prototypów, docelowej platformy na razie nie mogę pokazać 🙂


  2. To w dużym stopniu zależy od tego, co będziesz robić. Do lutowania ze sobą przewodów, ew. prostych układów w THT (technologii przewlekanej) i bez delikatnych scalaków, transformatorówka wystarczy. Do bardziej precyzyjnych i delikatnych rzeczy teoretycznie też, ale potrzeba bardzo dużej wprawy, żeby lutowanych elementów nie przegrzać. Generalnie warto jest mieć oba typy w warsztacie. Jeśli dopiero zaczynasz, to myślę, że zestaw ze stacją będzie dobrym wyborem. Lepiej jest jest martwić się o błędy na schemacie, niż zimne luty/przegrzane elementy 🙂

    Co się tyczy różnicy lutownica kolbowa(zakładam, że mówisz o takiej zasilanej z 230V)-stacja lutownicza, to w tej cenie dużej nie ma - pod warunkiem, że lutownica kolbowa ma faktycznie regulację temperatury lepszą niż przełącznik on/off z bimetalu. Marwiłbym się jedynie o jakość i bezpieczeństwo używania takiego wynalazku. Zarówno względem użytkownika, jak i względem lutowanego układu.

    Czego byś nie kupił na tym etapie (i w takiej cenie), to prawdopodobnie za jakiś czas i tak to zamienisz na coś lepszego - o ile złapiesz elektronicznego bakcyla 🙂


  3. Zawsze kiedy czytam takie rzeczy, to mam niemały ból czterech liter o to, że tego typu wynalazki są przez media traktowane jako przełomowe i nowatorskie oraz odpowiednio nagłaśnianie, chociaż nie wnoszą nic nowego - chyba, że ktoś nigdy nie bawił się dwiema strzykawkami połączonymi wężykiem 🙂. Tymczasem u nas w Polsce powstają roboty do zdalnych badań USG i palpacyjnych przeprowadzanych przez Internet z doskonale działającym interfejsem haptycznym i systemem teleprezencji umożliwiającym stereowizję, stereofonię i skalowanie ruchów/sił lekarza przy użyciu suwaka w GUI, zamiast manualnych przekładni... Ale dla rodzimych dziennikarzy z branży technologicznej ważne jest tylko to, że świeci diodami i jeździ 😉

    PS sterowanie pneumatyczne tego typu w znacznie bardziej zaawansowanej formie od dawna stosuje m.in. firma Engineered Arts w robocie RoboThespian.


  4. W naszym robocie używamy 4x150W i spokojnie dają radę - nawet jeśli się stanie na obudowie - kwestia dobrania optymalnego przełożenia. Waga robota to ok. 30kg. Weź pod uwagę, że taką moc musisz z czegoś dostarczać i nie chodzi mi tylko o kwestie sterownika odpornego na masakryczne warunki pracy, ale również o wagę akumulatora.

    Zanim zaczniesz budowę, polecam jednak zaznajomić się z pojęciem "skid steering" albo od razu minimalizować odstęp między osiami par kół. Mam wrażenie, że na wspomnianym filmie problem został pominięty w sterowaniu, o ile w ogóle zastosowano coś inteligentnego. Zmniejszenie rozstawu osi kół do granic możliwości jest najprostszym wyjściem z sytuacji. Ceną jest mniejsza stabilność, jeśli obudowa wystaje poza punkty podparcia. U nas koła nie mogły być bliżej z przyczyn konstrukcyjnych (gigantyczny akumulator w środku z zabezpieczeniami), więc problem rozwiązujemy sterowaniem.


  5. Pewnie chodzi o typowy IMU, czyli akcelerometr 3DoF + żyroskop 3DoF + magnetometr 3DoF. Gdzieś nawet widziałem "IMU 10 DoF", bo miało czujnik temperatury, a już totalnym przegięciem było dla mnie reklamowanie w jakimś sklepie iNemo v2 jako "IMU 11DoF", bo miało jeszcze dodatkowo pomiar ciśnienia 😃


  6. na diodach pousuwałem rezystory, bo prąd jest tam jakiś niewielki (nie mam czym go zmierzyć) i z opornikami bardzo słabo by mi świeciły..

    Prosisz się w ten sposób o spalenie portów wyjściowych procka, nigdy tak nie rób! Jeśli diody Ci za słabo świecą, to zmniejsz rezystancję np. na 470R, ale nie wywalaj całkowicie rezystora!

    Jeśli chodzi o A3 i A4, to nie potrafię wróżyć z fusów, nie wiem jak je konfigurujesz. Może nadpisujesz globalne zmienne Arduino, a może jeszcze inne ptaszki... Może nawet upalony MUX od ADC. Moja kryształowa kula też milczy 😉

    • Pomogłeś! 1

  7. Jeśli na silniki możesz "wystawić" PWM o wartości 0÷255, to czego byś nie robił, powinieneś dać na wyjściu sygnału tzw. saturator, czyli warunek sprawdzania poprawności sygnału, który wychodzi z Twojego regulatora - "jeśli wyjscie < 0, to PWM=0, jeśli wyjscie > 255, to PWM=255". W ten sposób zabezpieczysz się przed przekręceniem zmiennej, która jest 8-bitowa. To powinno pomóc w Twojej wizji algorytmu... W skrajnym przypadku jeden silnik się zatrzyma, drugi będzie się kręcić z PWM=255.

    Musisz jednak wiedzieć, że zmienna "change" służy tylko do korekcji, czyli jeśli error=0, to change także powinno być równe 0. Jeśli chcesz użyć klasycznego algorytmu w obecnej postaci, to załóż swoje maxSpeed = 100, a nie 200. Wtedy w przypadku maksymalnego błędu jeden silnik się zatrzyma, a drugi będzie działać z maxSpeed*2, żeby błąd skompensować, a przy błędzie 0 oba silniki będą się kręcić z maxSpeed.

    Tylko nie spodziewaj się cudów po samym członie proporcjonalnym, efekt może być nawet gorszy od prostej pętli warunkowej (if...else if...). Cała sztuka to dobrze dobrać współczynnik Kp - w przypadku Linefollowera, to chyba tylko doświadczalnie. Potem trzeba zbytnie "pijaństwo" poprawić członem różniczkującym, inaczej robot będzie albo wolno reagować (małe Kp), albo będzie go ciągle "zarzucać" nawet na prostej (duże Kp). No chyba, że nie zależy Ci na prędkości.


  8. sudo ping 127.0.0.1

    Pingowanie localhosta trochę mija się z celem...

    Sprawdź, czy z Pi w ogóle widzisz 192.168.43.113 i 192.168.43.1 (ping 192.168.43.113 i ping 192.168.43.1).

    Jeśli nie działa, to spróbuj ręcznie ustawić gateway na 192.168.43.1.

    Jeśli działa, a np.

    ping google.com

    zwraca błędy, to ustaw jeszcze ręcznie DNS na taki, jak w kompie...

    I proszę:

    sudo chmod 4711 /bin/ping

    :>


  9. Wydaje mi się, że w elektryce jest trochę łatwiej znaleźć pracę, zwłaszcza jeśli nie jesteś specjalistą - w szczególności na budowie potrzebni są ludzie z tego typu umiejętnościami. Elektronika jest za to chyba lepiej płatna, ale ciężko się "zahaczyć" w mniejszych miejscowościach - chociaż i to pewnie zależy. Najlepiej po prostu przejrzeć lokalne oferty pracy i wybrać opcję, która najlepiej pokryje zapotrzebowanie na rynku.. Przez rok raczej się drastycznie nie zmieni. Sugeruję za to dużo działać w temacie poza kursem, bo żaden kurs, ani nawet żadne studia nie dadzą Ci tyle, ile samodzielna praca. Zwłaszcza podparta pasją.


  10. Może robią fuzję sensoryczną do outdoorowych zastosowań? Mają dwa niepewne źródła danych, a dzięki fuzji mają większe szanse na to, że robot nie zgłupieje i nie wjedzie nikomu pod nogi 😃 Nie zdziwiłbym się, gdyby jeszcze miał jakieś IMU i enkodery 😉

    PS sorki za edit 😉


  11. Skoro potrafisz już odebrać dane po UART, to nie potrzebujesz "przykładu na arduino", tylko przykładu w C do cięcia stringów.

    Masz jakiś przykład ze stackoverflow

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    int main(void)
    {
       char *strings[30];
       char Policystr[4096] = "the|string|to|split"; 
       char delims[] = "|";
    
       int i = 0;
       strings[i] = strtok( Policystr, delims );
       while( strings[i] != NULL  ) 
       {
           printf("%d '%s'\n", i, strings[i]);
           strings[++i] = strtok( NULL, delims );          
       }
    
       for ( int j = 0; j < i; j++ ) 
       {
           printf("%d '%s'\n", j, strings[j]);
       }
    }

    http://stackoverflow.com/questions/10513841/using-strtok-to-split-the-string


  12. Polecam uczenie się z helpa do BASCOM-AVR. Jeśli nie znasz dobrze angielskiego, to wpisz sobie w google "bascom avr help pl" i ściągnij pierwszego PDF'a. Główna zaleta - jest za darmo. Osobiście nie wiem, czy warto inwestować środki inne niż czas w naukę BASCOM, ja bym chyba wolał zbierać na ksiażkę o podstawach C. Jeśli się jednak zdecydujesz, to polecam ogólnie książki pana P. Góreckiego, który napisał coś również na temat BASCOM'a - "Mikrokontrolery dla początkujących".

    • Pomogłeś! 1

  13. Przykład z kursu to po prostu zestaw instrukcji warunkowych, które wykonują się w zależności od tego, który czujnik widzi linię. Jest to rodzaj regulatora, więc nie, nie da się tego zadania zrobić bez stosowania regulatora 😉 Na szczęście Ty już jednego używasz. Zakładam, że chodzi Ci o 'bardziej zaawansowane' (które tak naprawdę są bardzo proste) regulatory jak P, PD, PID... Jak najbardziej się da - wystarczy zwiększyć liczbę warunków, przewidzieć więcej możliwości wykrywanych przez czujniki stanów. Mógłbyś zacząć reagować np. już w momencie, gdy czujnik zaczyna wykrywać linię, a nie dopiero kiedy czujnik znajduje się bezpośrednio nad linią - np. obniżając wartość zmiennej Granica lub rozdzielając ją na "Chyba_zaczynam_widziec_linie" i "Na_pewno_widze_linie", mam nadzieję, że wiesz o co mi chodzi 🙂 3 czujniki spokojnie wystarczą do uzyskania zadowalającego efektu. Sugeruję jednak wymyślić coś w ramach "podpórki", jeśli szurasz czujnikami po nierównym podłożu, to ciężko Ci będzie dopracować program, bo w takiej samej sytuacji "na drodze" robot może się zachować na różne sposoby - wystarczy że czujnik podskoczy, będzie trochę wyżej nad linią i robot pomyśli, że z niej zjeżdża 🙂

    Co do drugiego pytania:

    Config Timer1 = Pwm , Pwm = 8 , Prescale = 1 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down

    zamień na

    Config Timer1 = Pwm , Pwm = 8 , Prescale = 1 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up

    - powinno pomóc

    • Lubię! 1

  14. Strasznie ciężko jest mi zrozumieć, na czym polega Twój problem, ale wydaje mi się, że potrzebujesz zaprojektować ramkę, za pomocą której Twój telefon będzie się komunikował z arduino przez bluetooth. Obecna "ramka" to po prostu jedna wartość, więc nie ma problemu - to, co wyślesz, to odbierzesz i automatycznie zinterpretujesz. W praktyce potrzebujesz na ogół przesłać więcej informacji i do tego celu tworzy się ramki komunikacyjne. Taka ramka to po prostu przyjęty przez Ciebie standard, w którym jest zakodowana informacja - układasz dane w określonej kolejności w telefonie i znając tę kolejność odczytujesz dane w Arduino.

    Najprostsza wersja - układasz ramkę korzystając z ASCII, wstawiając kolejno potrzebne dane, czyli np. w appce na Androidzie masz:

    A = 232

    B = 131

    C = 002

    D = 505

    układasz to w ramkę:

    RAMKA = "232#131#002#505"

    i taki string wysyłasz przez uart (bluetooth) do arduino.

    Ten sam string odbierasz w Arduino, wiesz, ze pierwsze 3 litery/cyfry to wartość suwaka A, potem jest separator (delimiter), kolejne 3 to wartość suwaka B itd. - musisz stringa po prostu "pociąć", wyciągnąć kolejno interesujące Cię fragmenty, przekonwertować je na zmienną liczbową (np. funkcją atoi) i tyle... Jeśli pytasz o mechanizmy do składania i "cięcia" ramki złożonej ze znaków ASCII, to polecam zainteresować się funkcjami sprintf (składanie) oraz strtok (cięcie na podstawie delimitera)

    • Pomogłeś! 1

  15. Taki mały tip z mojej strony - pamiętaj, żeby przewidzieć jakiś sensowny sposób napinania paska - ma to później kolosalne znaczenie, bo zginany na tak mały promieniu (zapewne niezgodnym z notą katalogową) może się rozciągać przez jakiś czas. Jeśli planujesz napinać go gdzieś na ruchomej "tacce" od heatbeda, to zrób dojście na śrubokręt, ew. doprojektuj jakieś narzędzie , jeśli masz dostęp do frezarki. Tzw. fasolki (wycięte podłużne otwory pod śruby) zdają egzamin, ale jeszcze lepszy system to śruby z popychaczem - popychacz napina pasek, śrubą łatwo regulujesz jak mocno, nawet w trakcie pracy (podczas pauzy).

×
×
  • Utwórz nowe...