Skocz do zawartości

michcioh

Użytkownicy
  • Zawartość

    23
  • Rejestracja

  • Ostatnio

Reputacja

7 Neutralna

O michcioh

  • Ranga
    2/10

Informacje

  • Płeć
    Mężczyzna
  • Lokalizacja
    Dąbrowa Górnicza
  • Języki programowania
    C#, Java (Android)
  • Zainteresowania
    Programowanie w tym na Androida, elektronika
  • Zawód
    Ściśle tajny ;-)

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. Hej Marku, dzięki za odpowiedź. Czasu mi nie szkoda, pieniędzy - zdecydowanie bardziej Poziomy - siła nośna, pionowy - przeciwdziałanie obracaniu, chyba, że chcesz skręcić. Wtedy zmniejszam/zwiększam obroty pionowego - śmigłowiec się delikatnie obraca (w każdym razie w teorii). Śmigło poziome jest na elemencie, który serwem od wewnątrz ustawiam, by było pochylone lub odchylone. Dzięki temu siła nośna nie będzie kierowana pionowo w dół, ale pod skosem, niczym kijki od narciarza który zjeżdża. Uwzględniając, ze umiem sterować już przód - tył, obrót lewo + prawo, mogę skręcić, obracając helikopter w daną stronę i pochylając poziome śmigło. Zmiana kąta łopat silnika poziomego jest oczywiście wykluczona przy tym co kupiłem Co do czujników, to mam żyroskop wieloosiowy, więc mogę nawet sterować pionowym śmigłem tak by niwelować obrót, kiedy go nie chcę. Natomiast wg wszelkich opisów mam informację, że silnik ten powinien mieć ciąg 1kg. Skąd niepokojące mnie przeliczenie 300g ciągu? 300 to będzie zdecydowanie za mało trzeba będzie się wtedy przerzucić na samolot z tym śmigłem Pozdrawiam, Michał
  2. Cześć Marku, robię coś na wzór klasycznego helikoptera z dwoma silnikami - górnym "poziomym" i z tyłu "pionowym". Nie złap się za głowę, ale jest to model... baaaardzo amatorski piszesz, że to najwyższa szkoła wtajemniczenia modelarskiego - zapewne tak. Ale chcę to poczuć na własnej skórze. Stosuję własne pomysły rozwiązywania niektórych aspektów i dlatego liczę się z porażkami Regulator zakupiłem wraz z silnikiem i łopatami, tutaj link: https://allegro.pl/oferta/zestaw-silnik-a2212-1400kv-esc-30a-2x-smiglo-8045-8517382314.
  3. Cześć, Tworzę własny helikopter, powoli ucząc się kolejnych rzeczy. Mam zakupiony silnik wraz z ESC. Chciałbym ESC połączyć z baterią , np. taką z aukcji https://allegro.pl/oferta/pakiet-bateria-lipol-11-1v-2200mah-3s-20c-redox-rc-8745131281. Przedstawiam w załączniku jak wygląda moje ESC jeśli chodzi o końcówki czarna i czerwona - to po prostu "kabel". Czy potrzebuję zakupić jakąś wtyczkę, którą trzeba przylutować, by móc podłączyć LiPo ? Druga strona ESC zawiera końcówki inne niż na zdjęciu z załącznika, silnik poprawnie mogę podłączyć. Z góry dzięki za pomoc, Michał
  4. Pół dnia spędzone na znalezieniu rozwiązania. A rozwiązaniem są rzeczywiście... timery. Trzeba było ustawić #define RH_ASK_ARDUINO_USE_TIMER2 w pliku RH_ASK.cpp.
  5. Cześć ponownie, Rzeczywiście używałem starej, niewspieranej biblioteki. Zmieniłem ją na RadioHead, efekt niestety jest identyczny. Ponieważ Radiohead dla standardowej konfiguracji używa także pinu 10, zmieniłem używany przeze mnie uprzednio pin 10 na 3. Nie pomogło (poniżej kod). Zastosowałem funkcję millis zamiast delay - czy o to Ci chodziło @atMegaTona pisząc o przypisanie timera? To też nie pomogło. Efekt jest identyczny jak w pierwszym kodzie, który tu przeklejałem. Nie szukam jeleni. Szukam pomocy, jeśli czegoś konkretnego nie doczytałem - napisz czego, doczytam, ale mam wrażenie, że założyłeś, że nic nie czytałem A to prawdą nie jest. Więc jeśli coś spartoliłem, to co? Pozdrawiam serdecznie z prośbą o dalszą, niezbędną mi, merytoryczną pomoc #include <RH_ASK.h> #ifdef RH_HAVE_HARDWARE_SPI #include <SPI.h> // Not actually used but needed to compile #endif #define M_1A 9 #define M_1B 3 #define M_2A 5 #define M_2B 6 int speed = 0; int vDelay = 500; unsigned long vTime = 0; RH_ASK driver; void setup() { Serial.begin(9600); // Debugging only if (!driver.init()) Serial.println("init failed"); else Serial.println("init OK"); pinMode(M_1A, OUTPUT); pinMode(M_1B, OUTPUT); pinMode(M_2A, OUTPUT); pinMode(M_2B, OUTPUT); } void loop() { if (millis() - vTime >= vDelay) { Serial.println("forward"); speed = speed + 30 > 255 ? 255 : speed + 30; // increase speed by 30. //Serial.print("Speed = "); // LINIJKA A1 //Serial.println(speed); // LINIJKA A2 analogWrite(M_1A, speed); // LINIJKA B1 //digitalWrite(M_1A, HIGH); // LINIJKA B2 digitalWrite(M_1B, LOW); analogWrite(M_2A, speed); // LINIJKA C1 //digitalWrite(M_2A, HIGH); // LINIJKA C2 digitalWrite(M_2B, LOW); vTime = millis(); } }
  6. Cześć, tworzę od dłuższego czasu model samochodu zdalnie sterowanego. Niestety napotkałem na ścianę, której nie umiem rozbroić mówiąc krótko: Arduino UNO (wersja "nieoryginalna") wiesza mi się co poznaje po wypisaniu niepełnej linijki instrukcji Serial.print oraz braku migania diody RX. Dodatkowo silniczki, które powinny reagować na zmiany wartości nie robią tego, nie reagują zgodnie z tym jak powinny być sterowane kodem - ewidentna zwiecha. Aby uwidocznić problem starałem się go uzyskać przy minimalnej ilości informacji potrzebnych do przekazania tutaj, eliminując kolejne rzeczy niemające wpływu na występowanie tego problemu z projektu. Zmieniałem też płytkę Arduino przy pełnym projekcie, by wykluczyć wadę tejże. Zachowywała się identycznie. I tak scenariusz uzyskuję gdy: arduino nie jest podłączone do żadnego kabla poza kablem USB do laptopa. Żaden z pinów nie ma przypiętego kabelka. Program wklejam poniżej: #include <VirtualWire.h> #define M_1A 9 #define M_1B 10 #define M_2A 5 #define M_2B 6 #define ANTENA 11 int speed = 0; void setup() { Serial.begin(9600); pinMode(M_1A, OUTPUT); pinMode(M_1B, OUTPUT); pinMode(M_2A, OUTPUT); pinMode(M_2B, OUTPUT); pinMode(ANTENA, INPUT); vw_set_ptt_inverted(true); // Required for DR3100 vw_setup(100); // Bits per sec, default 2000 vw_set_rx_pin(ANTENA); vw_rx_start(); // LINIJKA X } void loop() { int del = 500; Serial.println("forward"); //recive(); speed = speed + 30 > 255 ? 255 : speed + 30; // increase speed by 30. Serial.print("Speed = "); // LINIJKA A1 Serial.println(speed); // LINIJKA A2 analogWrite(M_1A, speed); // LINIJKA B1 //digitalWrite(M_1A, HIGH); // LINIJKA B2 digitalWrite(M_1B, LOW); analogWrite(M_2A, speed); // LINIJKA C1 //digitalWrite(M_2A, HIGH); // LINIJKA C2 digitalWrite(M_2B, LOW); delay(del); } Przy takim kodzie, program pokazuje na konsoli COM5 napis "forwa" i następuje zwiecha. To się nie dzieje w alternatywnych sytuacjach gdy: 1) linijka X jest wygaszona (czyli nie uruchamiam modułu radiowego), ale komunikacja radiowa jest kluczowa w moim projekcie, 2) linijka X nie jest wygaszona, za to używam digitalWrite (linijka B2 i C2) zamiast analogWrite (linijki B1 i C1), ale chcę docelowo tymi pinami sterować prędkością silniczków (przez sterownik) 3) kod jest taki jak przeklejony wyżej, ale... zaraz przed ustawieniem wartości analogWrite NIE jest wypisywany tekst na Serialu: linijki A1 i A2 są wygaszone. Wtedy ma lekką przywiechę na początku z napisem "forwa" (sekunda?), a następnie dokańcza linijkę i dalej idzie gładko. Oczywiście mógłbym zrezygnować z używania Serial i liczyć, że wszystko będzie działać. Tylko dla mnie to cenne źródło informacji, nie mówiąc o tym, że kompletnie nie rozumiem co tu się dzieje. Proszę o pomoc w zrozumieniu, co tu się dzieje, dlaczego Arduino zachowuje się tak dla przypadków jak wyżej? Co mogę zmienić, by projekt działał bez problemu? Wszelkie propozycje lub pytania mile widziane: tak jak napisałem stoję z projektem, na którym bardzo mi zależy Pozdrawiam serdecznie, Michał
  7. Hej, i to by tłumaczyło dlaczego przy 255 jest cisza, a przy 240 jest głośny dźwięk. Sprawdziłem i ... rzeczywiście tak jest. Dzięki stokrotne
  8. Cześć, mam problem, który obrazuje ten film: Chodzi o to, że zgodnie z kodem i tym co gość robi na tej stronie: https://www.brainy-bits.com/l9110s/ oczekuję, że koło będzie kręciło się sekundę w jedną stronę, następnie sekundę w drugą. Niestety, koło zamiast kręcić się w jedną ze stron - piszczy. Specjalnie ustawiam prędkość na 240, ponieważ jest to duża wartość. Tym bardziej, że w przeciwnym kierunku koło się kręci i to dość żwawo. Gdy - co ciekawe - speed ustawię na 255, to silnik nawet nie piszczy. Na filmie widać płytkę stykową - nic z niej nie jest obecnie podłączone do arduino, a silnik podłączony jest do sterownika zasilaniem z 4 nowych baterii AA. Proszę o pomoc. Przeglądałem noty katalogowe, filmy. Najczęściej sterują silnikami parami: LOW/HIGH (wejście A/B sterownika). I to też mi działa. Nie rozumiem, czemu gościowi z przytoczonego tutoriala działa, mimo, że robi inaczej a mnie nie. Co robię źle? Jak się tego dziada L9110S używa sterując PWMami prędkości w obu kierunkach? Dziękuję z góry za każdą pomoc, ja tracę cierpliwość:) Pozdrawiam, Michał
  9. Wymagać nie można, pełna zgoda, ale jak się może trochę rozchulać to trzeba korzystać Cenna uwaga z tym spadkiem i notami katalogowymi. Co masz na myśli pisząc "Akumulator litowy 2S" ?
  10. Dziękuję, bardzo mi pomogłeś!
  11. Dziękuję! Rozumiem, że te Lipole są po prostu "mocniejsze", więc wyciągnę max co mogę. No i można ładować! A CR2032? Pomysł bez sensu?
  12. Cześć, Zakupiłem model podwozia ZK-4WD (taki jak tu: https://botland.com.pl/pl/podwozia-robotow/7289-chassis-rectangle-4wd-4-kolowe-podwozie-robota-z-napedem.html). Obecnie jeździ. Otrzymują prąd z 4 AA za pomocą dwóch mostków L9110S. Każdy silnik podpięty bezpośrednio do mostków, by móc ewentualnie korygować pracę konkretnego silnika programowo, gdyby pojazd samoczynnie skręcał. Okazało się, że chyba zbyt ambitnie, bo pojazd jedzie do przodu bez problemu. Mam dwa tematy, proszę o poukładanie mi w głowie: 1) jakie zasilanie będzie najlepsze jeśli chodzi o prędkość pojazdu? Próbowałem podpiąć Li-Po 3,7 V, jechał wolniej niż na alkalicznych 4 x AA. Przy czym na AA nie jeździ jakoś super szybko. Spodziewam się, że demonem prędkości nie będzie. Natomiast obserwacja silników po uruchomieniu tylko z jednej strony daje nadzieję, że może coś da się jeszcze coś zrobić, by wyciągnąć maksymalną "moc", bo kręcą się dość szybko. Czy mogę wykorzystać inne baterie, które umożliwią uzyskanie lepszych efektów? Czy producent AA też tu ma znaczenie? Wiem, że np. mój aparat fotograficzny nie zadziała na zwykłych paluszkach, ale na innych (CR-V3) już tak. Rozumiem, że chodzi o to, ile prądu na raz baterie mogą pobrać? Czy tutaj też mogę uzyskać lepsze osiągi stosując baterie AA o większej ilości mAh? Co w temacie zasilania takiego robota można powiedzieć o dwóch bateriach CR2032? 2) czy jeśli użyję tylko jednego mostka L9110S i jedno napięcie wychodzące z mostka rozdzielę na dwa silniki jednej strony, drugie na dwa silniki po drugiej stronie, to czy uzyskam spadek wydajności? Mam świadomość, że pytania mogą być naiwne, ale gdzie jak nie tu. Pozdrawiam, Michał
  13. Cześć. Jestem zmuszony zaakceptować to co piszesz na temat standardowego użycia joysticków (że wychylenie maksymalne jest nieergonomiczne). Gdy używa się joysticka jak przepustnicy (celnie to porównałeś), to będzie to się dziwnie zachowywać i dawać wrażenie błędnego działania. Jeśli ktoś popchnie joystick w ten sposób, że od razu uzyska połowę wychylenia, może pomyśleć, że joystick działa tylko "zero-jedynkowo". Dla przykładu pewnie tak zrobi mój pięciolatek A przecież nie o to chodzi. Natomiast rozumiem już ideę, dlaczego joystick tak działa. Podsumowując: do celów, jakie chcę osiągnąć, muszę użyć potencjometrów, bo joystick nie spełni moich wymagań. To chciałem ustalić przez ten post, a przy okazji wiele się nauczyłem od Was. Dzięki za cierpliwość i wyrozumiałość Pozdrawiam serdecznie!
  14. Dzięki za informacje. Tu jest filmik, w którym chciałem pokazać (nie wiem na ile mi to wyszło) ideę problemu. Podpiąłem też woltomierz - wtedy, gdy Arduino mówi, że ma wartość 3 lub 4 na woltomierzu jest 0V, więc Arduino nie przekłamuje wyników... To co, joystick do dupy?
×
×
  • Utwórz nowe...