• 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
Problem z HC-06 i serwomechanizmem
#1
Dzień dobry! 
Mam taki problem próbuję sterować obrotami serwomechanizmu za pomocą aplikacji w telefonie, używam do tego modułu HC-06. Kod wygląda tak:
#include <Servo.h>
Servo myservo;
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  myservo.attach(8);
  }

char cmd[100];
byte cmdIndex;

void exeCmd() {

  if (cmd[0] == 's') {
    unsigned int val = atof(cmd + 2);
    myservo.write(val);
  }
}

void loop() {
  // put your main code here, to run repeatedly:
  if (Serial.available() > 0){
    char c = (char)Serial.read();
    if (c == '\n') {
      cmd[cmdIndex] = 0;
      exeCmd();
      cmdIndex = 0;
    }else {
      cmd[cmdIndex] = c;
      if (cmdIndex < 99) cmdIndex++;
      }
    }
}
   
Po połączeniu się HC-06 z telefonem i włączeniu aplikacji, przesuwam suwak, który wstawiłem do interfejsu. No i przez chwilę wszystko działa prawidłowo serwomechanizm się obraca, ale potem wyskakuje komunikat że utracono połączenie z modułem bluetooth. Na obudowie modułu dioda przestaje się palić i jedyne co pomaga to odłączenie serwa od zasilania lub pinu 8, jednakże przy ponownym podłączeniu moduł znów się wyłącza. Jeżeli ktoś wie jak mi sprawić by moduł przestał się wyłączać przy pracy serwa to z góry dziękuję za pomoc. Pozdrawiam!
 
Odpowiedź
#2
Zasil serwo z innego źródła, dotyczy to każdego odbiornika tego typu - serwo, silniczek, krokowy, itp. Tylko ma być ciągle wspólna masa.
Upewnij się, że można zasilać ten moduł HC z 5V, moje działały OK, choć jednak było na nich nabazgrane ostrzeżenie, że tylko 3.3V i taka logika komunikacji.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości