Przeszukaj forum
Pokazywanie wyników dla tagów 'hc-05'.
Znaleziono 4 wyniki
-
Cześć, Próbuję przesłać dane z telefonu (używam gotowej aplikacji bluetooth terminal), na arduino. Schemat podłączenia wygląda następująco Oraz Kod SoftwareSerial BTSerial(2, 3); void setup() { Serial.begin(9600); BTSerial.begin(9600); pinMode(2, INPUT); pinMode(3, OUTPUT); } void loop() { if (BTSerial.available()) { char received = BTSerial.read(); Serial.print("Received: "); Serial.println(received); } delay(100); } W momencie gdy przesyłam dowolną wartość z telefonu wyskakuje mi coś takiego: Z tego co się orientuje powinienem otrzymać po prostu znac ASCII Gdy zamieniłem to na INT, pojawia się coś takiego Próbowałem znaleźć podobny problem na internecie, ale nigdzie nic nie widzę, czy to oznacza uszkodzony moduł bluetooth? Pozdrawiam i z góry dziękuję za pomoc
-
Cześć, z zawodu jestem alpinistą przemysłowym i pracując na konstrukcji (ścierając kurz ) z racji już średniego wieku stwierdziłem, że będzie mi łatwiej, przyjemniej i ciekawiej jeżeli pomogę sobie jakimś pojazdem zdalnie sterowanym :). W sprawach elektroniki jestem raczej zielony, ale zacząłem i w miarę upływu czasu okazuje się, że można, i jest jakiś mglista szansa, że mi się uda :). Mózgiem operacji jest płytka PWM UNO, pojazd gąsienicowy z 2-ma silnikami 12V(chińskimi-brak jakichkolwiek informacji o prądzie maksymalnym). Sterownik silników to L293d, moduł bluetooth to HC-05. Sterowanie z komórki. Pojazd ma się poruszać po wąskiej konstrukcji ~20cm szerokości, która nachylona jest pod kątem +-45 stopni do poziomu, dlatego używam też magnesu pod spodem oddalonego o jakieś 5 mm od "gruntu". Magnes powoduje, że będę potrzebował sporej mocy, żeby poruszać się łazikiem. I tak rzeczy, o których wiem, że nie są ok to : 1. Sterownik silników powinien być ( w mojej ocenie ) mocniejszy-choć ten się jeszcze nie spalił, ale nie chcę ryzykować i chciałbym kupić inny ( pytanie jaki?) 2. Moduł bluetooth powinien przechodzić przez około 3,5V, u mnie jest 5V, ale nic się nie dzieje. 3. Kod jest bardzo toporny i mi się nie podoba 🙂 ale póki mi działa też się tym nie przejmuję. Nie radzę sobie z : Sytuacją, w której z jakiegoś powodu tracę połączenie z łazikiem, nie chcę żeby stanął i się zrestartował. Chciałbym też zamontować prosty wskaźnik (czerwoną diodę) do sygnalizacji spadku napięcia poniżej pewnego progu (potencjometr dioda i rezystor wystarczą?) Zasilanie- póki co 2 akumulatory połączone szeregowo 7,4V x 2. Na jednym też działa. Chciałbym nie przesadzić, wiem że jest spadek napięcia na sterowniku ale nie wiem do jakiego napięcia mogę dojść (pewnie już przesadziłem :)) Wszelkie informację o kardynalnych i nie tylko, błędach oczywiście mile widziane- pamiętajcie także, że jestem
-
Niepoprawne działanie silników z L293D podłączonego do Arduino UNO
Dabz opublikował temat w Arduino i ESP
Witam wszystkich, na wstępie zaznaczę, że jestem początkującym elektronikiem oraz robię projekt do szkoły. Owym projektem jak wspomniałem w tytule jest autko na bazie Arduino UNO, L293D i modułu bluetooth HC-05 Sugerując się poradnikami postanowiłem zrobić projekt i podłączyć go według schematu poniże Już na początku napotkałem pewne problemy, ponieważ podłączenie zasilania na samą płytkę L293D (płytka jest wpięta bezpośrednio w Arduino) moduł HC-05 nie dział, więc rozdzieliłem kable i podłączyłem osobno L293D i Arduino UNO z jednego akumulatora i teoretycznie zadziałało. Lecz jak wgrałem kod (wszystko jak należy RX, tx zmieniłem i wyjąłem przed programowaniem) i połączyłem z aplikacją działa mi tylko przycisk tył i prawo. Jak klikam lewo i przód silniki zaciskają się i autko jedzie bez przerwy, a sam moduł się rozłącza i gubi zasięg z aplikacją. W czym może być problem???? Tutaj podsyłam jeszcze kod #include <AFMotor.h> //initial motors pin AF_DCMotor motor1(1); AF_DCMotor motor2(2); AF_DCMotor motor3(3); AF_DCMotor motor4(4); char command; void setup() { Serial.begin(9600); //Set the baud rate to your Bluetooth module. } void loop(){ if(Serial.available() > 0){ command = Serial.read(); Stop(); //initialize with motors stoped //Change pin mode only if new command is different from previous. //Serial.println(command); switch(command){ case 'F': forward(); break; case 'B': back(); break; case 'L': left(); break; case 'R': right(); break; } } } void forward() { motor1.setSpeed(255); //Define maximum velocity motor1.run(FORWARD); //rotate the motor clockwise motor2.setSpeed(255); //Define maximum velocity motor2.run(FORWARD); //rotate the motor clockwise motor3.setSpeed(255);//Define maximum velocity motor3.run(FORWARD); //rotate the motor clockwise motor4.setSpeed(255);//Define maximum velocity motor4.run(BACKWARD); //rotate the motor anti-clockwise } void left() { motor1.setSpeed(255); //Define maximum velocity motor1.run(BACKWARD); //rotate the motor anti-clockwise motor2.setSpeed(255); //Define maximum velocity motor2.run(BACKWARD); //rotate the motor anti-clockwise motor3.setSpeed(255); //Define maximum velocity motor3.run(FORWARD); //rotate the motor clockwise motor4.setSpeed(255); //Define maximum velocity motor4.run(FORWARD); //rotate the motor clockwise } void right() { motor1.setSpeed(255); //Define maximum velocity motor1.run(FORWARD); //rotate the motor clockwise motor2.setSpeed(255); //Define maximum velocity motor2.run(FORWARD); //rotate the motor clockwise motor3.setSpeed(255); //Define maximum velocity motor3.run(BACKWARD); //rotate the motor anti-clockwise motor4.setSpeed(255); //Define maximum velocity motor4.run(BACKWARD); //rotate the motor anti-clockwise } void Stop() { motor1.setSpeed(0); //Define minimum velocity motor1.run(RELEASE); //stop the motor when release the button motor2.setSpeed(0); //Define minimum velocity motor2.run(RELEASE); //rotate the motor clockwise motor3.setSpeed(0); //Define minimum velocity motor3.run(RELEASE); //stop the motor when release the button motor4.setSpeed(0); //Define minimum velocity motor4.run(RELEASE); //stop the motor when release the button } -
Witam, mam mały problem z sterowaniem serwomechanizmem za pomocą modułów bluetooth HC-05. Wartością wysyłaną jest sygnał z czujnika zginania, jest on zmapowany. Łącząc to na jednym arduino wszystko śmiga jak powinno, czyli odpowiednio zginając czujnik - rusza się serwomechanizm o dany kąt. Problem pojawia się gdy próbuję wysłać ten sygnał za pomocą bluetooth (być może kod jest zły, zaczerpnięty z internetu, ale komuś podobno działało, wstawię niżej). Moje moduły bluetooth zaprogramowałem wydaje mi się prawidłowo, jest między nimi połączenie (lecz musiałem je programować na arduino uno, bo na nano po wpisywaniu komend nic się nie działo). Domyślnie były one na 9600 baud rate. Układ z arduino nano jest moim masterem. Zmapowany sygnał z czujnika zginania wziąłem pod monitor i widać takie wartości: M332 L330 J331 K330 J331 K330 J330 Moim zdaniem powinny być same liczby, a nie jakieś cyferki dodatkowo. (może tu jest problem?) Układ z arduino uno jest slavem i biorąc pod monitor watości dostarczone tutaj otrzymuje: 13 10 83 51 51 51 10 51 Więc jakby liczby są prawidłowe, ale strasznie one skaczą i zginanie czujnika nie skutkuje zmianą tych wartości. Oto kod dla MASTERA: int val1; int state=0; void setup() { Serial.begin(9600); } void loop() { if(Serial.available() > 0){ // Checks whether data is comming from the serial port state = Serial.read(); // Reads the data from the serial por } val1 = analogRead(A0); // reads the value of the potentiometer (value between 0 and 1023) int val1map = map(val1, 0, 400, 0, 180); // scale it to use it with the servo (value between 0 and 180) Serial.println(val1map); Serial.write(val1map); delay(10); } Oto kod dla SLAVE'a: #include <Servo.h> Servo kciuk; // create servo object to control a servo int state=20; void setup() { kciuk.attach(5); // attaches the servo on pins to the servo object Serial.begin(9600); } void loop() { if(Serial.available() > 0){ // Checks whether data is comming from the serial port state = Serial.read(); } kciuk.write(state); Serial.println(state); delay(10); } Może arduino nano jakoś inaczej trzeba łączyć z bluetoothem? Ja oba bluetoothy połączyłem tak: RX z bluetooth'a do TX na arduino, TX z blue do RX na arduino, GND wiadomo do GND na arduino, Vcc do 5V na arduino. Potrzebuje pilnie pomocy i z góry dziękuję za każdą wiadomość!