Skocz do zawartości

Problem z komunikacją radiostacji z Arduino Uno


Pomocna odpowiedź

Napisano

Witam wszystkich serdecznie w moim pierwszym i mam nadzieję nie ostatnim poście. Swoją przygodę z Arduino zacząłem o zbudowania prostego kontrolera LEDó opartego na płycie Nano. Wszystko zrobiłem zgodnie z opisem i działa. Niestety teraz mam poważniejszy problem. Próbuję zrobić automatykę do mojej radiostacji opartej o radio Kenwood TS-590s. Założenie jest takie, że poprzez kabel RS232 , port COM w radiostacji wysyłane są informacje o częstotliwości na jakiej pracuje, a więc jakie pasmo radiowe jest aktywne. Arduino na podstawie tych info załącza odpowiedni przekaźnik na listwie przekaźników a one sterują całą automatyką a więc przełączają odpowiednie filtry pasmowe, np na 20M i do tego załączają wybraną antenę. Cała automatyka działa , ale muszę ręcznie przełączać w sterowniku odpowiednie pasmo. Dodatkowo jest wyświetlacza 16,2 który pokazuje częstotliwość oraz załączoną antenę. Teraz tak, ma moduł na MAX232 , przejściówka RS232 TTL. Po wgraniu programu, coś jest ewidentnie nie tak, ponieważ przy starcie wyświetlacz staruje, jest powitanie, a następnie tylko Napis Antena i kHz. To się nie zmienia mimo przełączania pasm. Według mnie nie ma komunikacji poprzez kable. Dodam tylko że kabel OK ponieważ jeżeli podłączam ten sam kabel i łączę moje radio z przełącznikiem antenowym to działa więc ten przełącznik (stara konstrukcja z przed 15 lat) odczytuje dane z radia poprzez RS232 a Arduino nie. Zbudowałem też układ samodzielnie oparty na MAX232 aby wyeliminować uszkodzony moduł. Bez zmian. Na płycie Arduino dioda TX cały czas szybko mruga i nic się nie dzieje. Oczywiście ustawianie prędkości portu nic nie daje. Wydaje mi się, że diody RX/TX powinny mrugać w zależności co się dziej, a TX tymczasem tylko szybko mruga i nic. Tutaj podaję stronę gdzie jest oryginalny kod oraz wideo jak to działa u tego gościa. LINK 

Ten fragment musiałem zmienić ponieważ wywalało błąd 

LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  // Set the LCD I2C

Zmieniłem na taki:

LiquidCrystal_I2C lcd(0x27, 16, 2);  // Set the LCD I2C

Będę wdzięczny za przejrzenie tego kodu, zresztą ciekawi mnie jak to działa u tego człowieka. 

Dziękuję i pozdrawiam 

@PiterSki witam na forum 🙂 Dla formalności rozumiem, że posiadasz dokładnie taki sam sprzęt jak autor oryginalnego projektu? I Twoje radio pracuje w takim trybie jak opisał to autor?

Cytat

Warning this version was tested only with TS-590 in standalone mode !!!

Tested with:  TS-590
Should work with: TS-480, TS-990 and TS-2000

 

4 godziny temu, Treker napisał:

@PiterSki witam na forum 🙂 Dla formalności rozumiem, że posiadasz dokładnie taki sam sprzęt jak autor oryginalnego projektu? I Twoje radio pracuje w takim trybie jak opisał to autor?

 

Cześć, dzięki za odpowiedź. Tak ja posiadam TS-590s oraz starszy TS-2000 ale to są dokładnie te same protokoły, nawet najnowsze TS-990 czy 890 mają dokładnie ten sam sposób komunikacji. Nie jestem programistą i chciałem się zapytać czy programistycznie ten kod jest poprawny, czy jest tam odpowiednio zaimplementowana sekcja portu COM, i czy szybkie ciągłe mruganie LEDa TX jest normalne ?

  • Lubię! 1

Dla pewności tylko podkreślę, że tam jest jakiś dopisek "in standalone mode". Nie znam tych sprzętów, nie wiem co to oznacza, ale upewnij się czy Twoje urządzenie pracuje w tym trybie.

Tamten program jest dość długi i tak "na oko" wygląda poprawnie, jednak bez testów praktycznych będzie to mało wiarygodne. Miganie diody sygnalizuje, że układ wysyła jakieś dane (w uproszczeniu mignięcie oznacza wysłanie czegoś). Jeśli druga dioda nie miga to oznacza, że układ nic nie odbiera. Więc albo urządzenie nie odpowiada na komendy wysłane z Arduino, albo próbują on komunikować się z inną prędkością. Arduino komunikuje się z prędkością ustawioną na 9600, może w tym radiu też gdzieś się ustawia coś takiego?

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...