Ta strona używa ciasteczek (plików cookies), dzięki którym może działać lepiej. Dowiedz się więcejRozumiem i akceptuję

Kurs budowy robotów - #8 - zdalne sterowanie IR (RC5)

Autor Wiadomość
Komentator 




Posty: 865
Otrzymał 17 piw(a)
Wysłany: 28-02-2017, 23:54   Kurs budowy robotów - #8 - zdalne sterowanie IR (RC5)


Zdalne sterowanie za pomocą latarki testowane podczas #6 części kursu budowy robotów było bardzo proste, ale miało jednak wiele ograniczeń. Tym razem zajmiemy się prawdziwą łącznością bezprzewodową! Zamiast światła widzialnego wykorzystamy podczerwień. Robotem będzie można więc sterować za pomocą pilota od TV.
UWAGA, to tylko wstęp!
Dalsza część artykułu dostępna jest na darmowym blogu Forbota.

Kliknij, aby przeczytać całość!


Poniżej znajdują się komentarze naszych użytkowników powiązane z tym artykułem.


Przeczytałeś artykuł? Dodaj komentarz!
Postaw piwo autorowi tego posta
 
 
Raf11 



Posty: 6
Wysłany: 01-03-2017, 17:22   

Świetny artykuł jak zawsze. Troszkę się tylko czepnę do terminologii. Wiem, że w artykule został użyty skrót myślowy i mam nadzieję, że nikt nie pomyśli, że fala podczerwona ma częstotliwość 36 kHz ;-)
Pozdr.

Postaw piwo autorowi tego posta
 
 
Treker 




Posty: 7545
Pomógł: 114 razy
Otrzymał 491 piw(a)
Skąd: Gdynia
Programuję w:
C, Arduino
Moje roboty:
Spectrum, Fuzzy

Wysłany: 01-03-2017, 20:15   

Raf11, nie chciałem zagłębiać się zbyt mocno w terminologię. W tekście są odnośniki do kolejnych artykułów na temat podczerwieni, więc zainteresowani na pewno zaspokoją głód wiedzy ;)


Zachęcam do korzystania z forum - nie pomagam indywidualnie przez PW/maila.
Sprawdź » Kurs ARDUINOKurs podstaw elektronikiKurs STM32
Postaw piwo autorowi tego posta
 
 
robert10 



Posty: 4
Wysłany: 02-03-2017, 18:00   

Problem z biblioteką RC5
zainstalowałem bibliotekę jak w instrukcji
i przy kompilacji błąd
Test_RC5.ino:3:17: fatal error: RC5.h: No such file or directory
compilation terminated.

Postaw piwo autorowi tego posta
 
 
leepa79 




Posty: 42
Otrzymał 5 piw(a)
Wysłany: 02-03-2017, 19:12   

robert10, pewnie już wcześniej instalowałeś biblioteki (we wcześniejszych lekcjach) więc powinno być ok. Próbowałeś jeszcze tego kroku: "Po ponownym uruchomieniu środowiska biblioteka będzie zainstalowana i gotowa do działania". I jeszcze taka porada. Ja zawsze dodaję tak biblioteki:

Postaw piwo autorowi tego posta
 
 
Więcej szczegółów
Wystawiono 1 piw(a):
robert10
robert10 



Posty: 4
Wysłany: 02-03-2017, 21:44   

Tak instalowałem już biblioteki. Mam wersje Arduino 1.7.10
Zainstalowałem bibliotekę, ponownie uruchomiłem program, ale nie działa. Próbowałem instalować jeszcze raz, ale pojawia się informacja, że biblioteka jest zainstalowana - Biblioteka RC5 już istnieje. W internecie znalazłem, że mogą być problemy z biblioteką z nazwą RC5-master.zip. Jako wskazówkę podano aby po rozpakowaniu usunąć człon nazwy w folderach -master. Próbowałem, ale i to nie działa
poniżej prezentuje zrzuty





Postaw piwo autorowi tego posta
 
 
Treker 




Posty: 7545
Pomógł: 114 razy
Otrzymał 491 piw(a)
Skąd: Gdynia
Programuję w:
C, Arduino
Moje roboty:
Spectrum, Fuzzy

Wysłany: 02-03-2017, 23:17   

robert10, czy w katalogu RC5 (z powyższego zrzutu) są już pliki biblioteki, czy jest tam może jeszcze jeden folder? Restartowałeś środowisko? Ta biblioteka nie ma w sobie nic nadzwyczajnego, skoro inne działały, to ta również powinna :)


Zachęcam do korzystania z forum - nie pomagam indywidualnie przez PW/maila.
Sprawdź » Kurs ARDUINOKurs podstaw elektronikiKurs STM32
Postaw piwo autorowi tego posta
 
 
Więcej szczegółów
Wystawiono 1 piw(a):
robert10
robert10 



Posty: 4
Wysłany: 03-03-2017, 10:36   

W folderze RC5 jest podfolder RC5 a w nim pliki
Poniżej załączam zrzut ze ścieżką dostępu
Tak restartowałem środowisko
Spróbuję przenieść pliki do folderu RC5 z podfolderu



Pozdrawiam

[ Dodano: 03-03-2017, 10:59 ]
Chyba rozwiązane tak jak podawałem we wcześniejszej wiadomość przeniosłem pliki z podfolderu RC5 do folderu RC5 i przeszedł proces kompilacji prawidłowo.
Niem mam możliwości wgrania kodu na Arduino ponieważ jestem w pracy, ale proces kompilacji przeszedł prawidłowo
Serdecznie pozdrawiam i dziękuję serdecznie użytkownikom Treker i leepa79

Postaw piwo autorowi tego posta
 
 
Treker 




Posty: 7545
Pomógł: 114 razy
Otrzymał 491 piw(a)
Skąd: Gdynia
Programuję w:
C, Arduino
Moje roboty:
Spectrum, Fuzzy

Wysłany: 03-03-2017, 14:35   

robert10, super, cieszę się, że już działa ;)


Zachęcam do korzystania z forum - nie pomagam indywidualnie przez PW/maila.
Sprawdź » Kurs ARDUINOKurs podstaw elektronikiKurs STM32
Postaw piwo autorowi tego posta
 
 
jessej 



Posty: 3
Wysłany: 18-03-2017, 17:23   

Witam,
niestety program testujący rc5 nie działa w moim przypadku.
Biblioteka zaimportowana prawidłowo, program się kompiluje, dla pewności kod skopiowany ze strony, próbowałam z różnymi pilotami, prędkość transmisji w monitorze jest taka sama jak w programie i wyświetla komunikaty jeżeli nie są w warunku if(rc5.read ...), piloty "sprawdzone" aparatem cyfrowym.

W jaki sposób mogę jeszcze sprawdzić, czy odbiornik ir na shieldzie działa prawidłowo?

Postaw piwo autorowi tego posta
 
 
Treker 




Posty: 7545
Pomógł: 114 razy
Otrzymał 491 piw(a)
Skąd: Gdynia
Programuję w:
C, Arduino
Moje roboty:
Spectrum, Fuzzy

Wysłany: 18-03-2017, 17:54   

jessej, witam na forum :) Czy testowałaś z tym pilotem, który jest w zestawie? Wklej proszę dla pewności kod, który wgrywasz do robota.


Zachęcam do korzystania z forum - nie pomagam indywidualnie przez PW/maila.
Sprawdź » Kurs ARDUINOKurs podstaw elektronikiKurs STM32
Postaw piwo autorowi tego posta
 
 
jessej 



Posty: 3
Wysłany: 18-03-2017, 20:19   

Dzięki.
Kod poniżej.
Zastanawiam sie dlaczego w tym przypadku nie konfigurujemy pinu 3 w funkcji Setup.
Używam pilot dołączonego do zestawu "Pilot zdalnego sterowania for Philips TV/DVR/VCR 3939#" w momencie naciśnięcia przycisku ma dodatkowo podświetlany przycisk POWER więc widać że działa.
Arduino z shieldem podpięte do komputera, zasilanie z baterii odłączone. Zdjęłam dodatkowo koszyk z bateriami z podstawy robota, żeby nie zasłaniać odbiornika :)

Kod programu: Zaznacz cały

#define TSOP_PIN 3
 
#include <RC5.h>
RC5 rc5(TSOP_PIN); //Informacja o podłączeniu odbiornika TSOP
 
//Zmienne dla RC5
byte address;
byte command;
byte toggle;
 
void setup() {               
  Serial.begin(9600);
}
 
void loop() {
 
  Serial.println("test");

  //Jeśli odebrano komendę
  if (rc5.read(&toggle, &address, &command))
  {
    Serial.print("A:");
    Serial.print(address);
    Serial.print(" K:");
    Serial.print(command);
    Serial.print(" T:");
    Serial.println(toggle);
  }
}


[ Dodano: 18-03-2017, 20:33 ]
Sam pin 3 w arduino działa poprawnie (sprawdzone po zdjęciu shield).

Postaw piwo autorowi tego posta
 
 
Treker 




Posty: 7545
Pomógł: 114 razy
Otrzymał 491 piw(a)
Skąd: Gdynia
Programuję w:
C, Arduino
Moje roboty:
Spectrum, Fuzzy

Wysłany: 18-03-2017, 22:46   

jessej, taki program nie zadziała - nie umieszczałem go w kursie ;)
W tej chwili wysyłasz do komputera napis "test" w każdym obiegu pętli. Arduino jest całkiem szybkie, więc ilość wysyłanych danych jest olbrzymia. Powoduje to zapchanie wszystkich buforów i zwyczajnie w monitorze portu szeregowego nie widać informacji o RC5. Po usunięciu tej zbędnej linijki (poniższy fragment) całość działa dobrze - sprawdzone przed chwilą na dwóch shieldach i dwóch pilotach.
Kod programu: Zaznacz cały
 Serial.println("test");

jessej napisał/a:
wyświetla komunikaty jeżeli nie są w warunku if(rc5.read ...)

Wklejony program, nie mówi nic o wysyłaniu żadnych danych, gdy brak sygnału od RC5 - do tego należałoby skorzystać z polecenia else w warunku. Jednak nawet z else bombardowania PC informacjami bez żadnych odstępów zakończy się problemem ;) Daj znać, czy bez tej dodatkowej linijki działa dobrze.


Zachęcam do korzystania z forum - nie pomagam indywidualnie przez PW/maila.
Sprawdź » Kurs ARDUINOKurs podstaw elektronikiKurs STM32
Postaw piwo autorowi tego posta
 
 
jessej 



Posty: 3
Wysłany: 19-03-2017, 00:55   

Przepraszam za zamieszanie, linię Serial.print("test") dorzuciłam już w procesie eliminowania kolejnych możliwych przyczyn problemu...
Program nie działa na oryginalnym kodzie (poniżej).
Jak wspomniałam sprawdziłam dodatkowo sam pin 3 w arduino (bez nakładki) i działa.
Stąd pytanie czy można w jakiś sposób jeszcze sprawdzić sam odbiornik.

Kod programu: Zaznacz cały

#define TSOP_PIN 3
 
#include <RC5.h>
RC5 rc5(TSOP_PIN); //Informacja o podłączeniu odbiornika TSOP
 
//Zmienne dla RC5
byte address;
byte command;
byte toggle;
 
void setup() {               
  Serial.begin(9600);
}
 
void loop() {
 
  //Jeśli odebrano komendę
  if (rc5.read(&toggle, &address, &command))
  {
    Serial.print("A:");
    Serial.print(address);
    Serial.print(" K:");
    Serial.print(command);
    Serial.print(" T:");
    Serial.println(toggle);
  }
}

Postaw piwo autorowi tego posta
 
 
Treker 




Posty: 7545
Pomógł: 114 razy
Otrzymał 491 piw(a)
Skąd: Gdynia
Programuję w:
C, Arduino
Moje roboty:
Spectrum, Fuzzy

Wysłany: 19-03-2017, 15:12   

jessej, ok rozumiem. Do tej pory nikt nie zgłaszał podobnego problemu, więc nie mam gotowego rozwiązania ;) Wyślij proszę do mnie przez prywatne wiadomości nr zamówienia w Botlandzie (lub imię i nazwisko osoby zamawiającej), to sprawdzimy inny shield z tej serii. Jeśli okaże się, że to problem sprzętowy, to wymienimy płytkę :)


Zachęcam do korzystania z forum - nie pomagam indywidualnie przez PW/maila.
Sprawdź » Kurs ARDUINOKurs podstaw elektronikiKurs STM32
Postaw piwo autorowi tego posta
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Wersja do druku

Skocz do:  

Nie rozwiązałeś swojego problemu? Zobacz podobne tematy: Kurs STM32 - #4 - St... Kurs STM32 - #5 - Ko... Kurs STM32 - #2 - Po... Kurs Arduino - #9 - ...
lub przeszukaj forum po wybranych tagach: arduino, elektronika, kursy, programowanie


Powered by phpBB modified by Przemo © 2003 phpBB Group
Popularne kursy: Arduinopodstawy elektroniki