• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Pytanie o moduł bluetooth
#1
Witam, mam pytanie odnośnie modułów bluetooth. Chciałbym odbierać informacje z arduino z czujnika DHT 22 oraz przekaźnika (włączony/wyłączony) Czy HC-06 się nadaję? Wiem, że potrzebuje do tego konwerter stanów logicznych ale czy coś jeszcze? Są moduły bluetoth dzięki którym mogę odbierać sygnał z arduino, a także wysyłać do aarduino jakieś komendy? btw. posiadam arudino UNO.
 
Odpowiedź
#2
Odbierać, ale gdzie? Jak już kupujesz moduł BT HC to wybierz ten HC-05, może być masterem i wtedy mając dwa połączysz się do niego z telefonu na Androidzie, lub ustawiając jeden w master możesz połączyć ze sobą dwa Arduino.
Zazwyczaj do Arduino podłącza się moduł w trybie SLAVE, Arduino może wtedy zarówno wysyłać jak i odbierać dane, ale inicjalizacja połączenia musi nastąpić z MASTER, Master to może być inny moduł Arduino z HC-05 ustawionym na MASTER, PC z wbudowanym lub dołączonym na USB donglem BT, telefon z Androidem.
 
Odpowiedź
#3
Nie chce przesyłać informacji pomiędzy dwoma Arduino, chce tylko odbierać na telefonie (w aplikacji) takie informacje z arduino jak temperatura i wilgotność. Ewentualnie sterować przekaźnikiem.

Edit: mam jeszcze pytanie co do przekaźnika podpiętego pod arduino. Lepiej kupić ten aktywowany stanem niskim czy wysokim? Jeżeli przekaźnik jest aktywowany stanem niski to czy przy awarii arduino (np. odcięciu zasilania od arduino) przekaźnik pozostanie włączony?
 
Odpowiedź
#4
Wolę ustawić stanem wysokim. Jest taki magik od edukacji AVR i aktywuje ledy stanem niskim, zawsze widać takie mignięcie gdy układ startuje, domyślnie jednak jest tam stan niski.
Niektóre układy muszą być z układem niskim na pinie, bo jest ograniczenie prądu, uA dla VCC i mA dla GND, w AVR oba kierunki są równoważne.
Można oczywiście dodać np. rezystor 10k z pinu do VCC i pierwsze w SETUP wpisać 1 na pin, a potem ustawić go na wyjście, wtedy będzie OK.
To że nie chcesz używać trybu master to nie znaczy, że musisz kupować moduły okrojone gdy są w tej samej cenie.
 
Odpowiedź
#5
Stan wysoki na włączenie przekaźnika tak?

Do tego modułu hc06 potrzebny jest programator czy można się bez tego obejść? Jeśli nie to czy ST-LINK STLINK V2 STM32 STM8 ARM Cortex będzie ok?
 
Odpowiedź
#6
ST-LINK STLINK V2 STM32 STM8 ARM Cortex jest do ARM cortex.
HC-06 nie wymaga programatora, podłączasz do UART 3.3V (najczęściej działają do 5V, chodzi o poziom logiki na pinach TX/RX, nie zasilanie) i mówisz mu przez UART co ma robić komendami AT. A tak na co dzień to tylko podłączasz i on już od startu przekazuje dane między UART a radiem BT.
 
Odpowiedź
#7
Dobra, mam już podłączone, wszystko działa. Przez aplikacje RoboRemoFree na telefonie moge zapalać diode na telefonie ale nie mam pojęcie jak przekazać do telefonu temperature z czujnika bme 280. Jakieś pomysły ? Może być inna aplikacja bluetooth.
 
Odpowiedź
#8
Jak już masz połączenie bluetooth to wszystko co wydrukujesz na TEN UART od bluetooth dolatuje do telefonu. Czyli np. Serial1.print(22.5), czy Serial1.println (zmiennaTrzymajacaWartoscTemperatury). Inna sprawa, że aplikacja w telefonie musi umić coś z taką informacją zrobić. Wpiszesz w wyszukiwarce GooglePlay "Arduino" to wyskoczy dużo aplikacji. Żadnej nie polecę, bo mi wystarcza terminal, czyli otwiera okienko jak w Arduino na PC i można sobie pisać i odbierać komunikaty, jest kilka przycisków gdzie można zapisać jakiś tekst/makro i to wysłać jednym "palcnięciem" - autor mojego to kai-morich.de.
Nie powinno się używać UART używanego do komunikacji z PC, czyli np. w UNO trzeba dodać jakiś programowy na wybranych pinach innych niż D0 i D1. MEGA ma kilka sprzętowych, MICRO/Leonardo do PC używają USB i ten na pinach D0/D1 to właśnie Serial1.
 
Odpowiedź
#9
(06-08-2020, 01:44)kaczakat napisał(a): Jak już masz połączenie bluetooth to wszystko co wydrukujesz na TEN UART od bluetooth dolatuje do telefonu. Czyli np. Serial1.print(22.5), czy Serial1.println (zmiennaTrzymajacaWartoscTemperatury). Inna sprawa, że aplikacja w telefonie musi umić coś z taką informacją zrobić. Wpiszesz w wyszukiwarce GooglePlay "Arduino" to wyskoczy dużo aplikacji. Żadnej nie polecę, bo mi wystarcza terminal, czyli otwiera okienko jak w Arduino na PC i można sobie pisać i odbierać komunikaty, jest kilka przycisków gdzie można zapisać jakiś tekst/makro i to wysłać jednym "palcnięciem" - autor mojego to kai-morich.de.
Nie powinno się używać UART używanego do komunikacji z PC, czyli np. w UNO trzeba dodać jakiś programowy na wybranych pinach innych niż D0 i D1. MEGA ma kilka sprzętowych, MICRO/Leonardo do PC używają USB i ten na pinach D0/D1 to właśnie Serial1.

Dzięki za twoje tymczasowe odpowiedzi, bardzo mi pomogły. Na razie wszystko działa, będę rozbudowywał program i jak coś wyskoczy to dam znać Smile
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości