Quantcast
Channel: Arduino Polska Forum - Wszystkie działy
Viewing all articles
Browse latest Browse all 256

Problem z projektem bluetooth

$
0
0
Witam. Buduję układ mający być sterowaniem w zdalnie sterowanym samochodzie. W skrócie: Sygnał z telefonu idzie do modułu bluetooth hc-06, arduino go odczytuje i daje napięcie i informację o prędkości do modułu l298n który napędza silnik. na podobnej zasadzie działa serwo. Całość zasilana jest z baterii 7,4v. Serwo jest podłączone do baterii przez regulator napięcia, który napięcie zmniejsza do 5v. Problem jest następujący: napisałem dwa osobne programy. Jeden do kontroli serwa, a drugi do silnika. Osobno oba działają jak należy, problem pojawił się gdy połączyłem je w jeden, wtedy działa tylko serwo. W załączonych plikach przesyłam zdjęcia układu jak i program. Z góry dziękuję za pomoc.

.jpg   IMG_20240115_125738.jpg (Rozmiar: 507.06 KB / Pobrań: 1)

.jpg   IMG_20240115_125748.jpg (Rozmiar: 462.47 KB / Pobrań: 0)
.jpg   IMG_20240115_125750.jpg (Rozmiar: 667.14 KB / Pobrań: 1)

const int ENA = 8;  // Pin PWM dla kanału A
const int IN1 = 7;  // Pin IN1 dla kanału A
const int IN2 = 6;  // Pin IN2 dla kanału A
#include &tServo.h&t
Servo myservo;
int pos = 0;    // variable to store the servo position
int motor = 0;

void setup() {
   pinMode(ENA, OUTPUT);
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  Serial.begin(9600);
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
 
  Serial.print("Arduino control Servo Motor Connected OK");
  Serial.print('\n');
}  
char znak;
void loop() {                                  
  if (Serial.available() &t 0) {
    znak = Serial.read();
  }
  if (znak == 'W') {
    analogWrite(ENA, 128); // 50% z 255 (128 -9V())
  digitalWrite(IN1, HIGH);
  digitalWrite(IN2, LOW);
  }
  if(znak == 'w'){
    digitalWrite(IN1, LOW);
  digitalWrite(IN2, LOW);
  }
{ motor = Serial.parseInt();
   
    // do it again:
    pos = Serial.parseInt();
 
    // look for the newline. That's the end of your  sentence:
    if (Serial.read() == '\n') {
             
       myservo.write(pos);              // tell servo to go to position in variable 'pos'
       delay(15);                       // waits 15ms for the servo to reach the position
     
      // print the three numbers in one string as hexadecimal:
      Serial.print("Data Response : ");
      Serial.print(motor, DEC);
      Serial.print(pos, DEC);      
      }
}
}

Viewing all articles
Browse latest Browse all 256

Trending Articles


TRX Antek AVT - 2310 ver 2,0


Автовишка HAULOTTE HA 16 SPX


POTANIACZ


Zrób Sam - rocznik 1985 [PDF] [PL]


Maxgear opinie


BMW E61 2.5d błąd 43E2 - klapa gasząca a DPF


Eveline ➤ Matowe pomadki Velvet Matt Lipstick 500, 506, 5007


Auta / Cars (2006) PLDUB.BRRip.480p.XviD.AC3-LTN / DUBBING PL


Peugeot 508 problem z elektroniką


AŚ Jelenia Góra