Skocz do zawartości

Wykonywanie programu w robocie po odłączeniu przewodu USB od Arduino UNO


Karox

Pomocna odpowiedź

Witam. Może nie za dobrze opisałem temat ale, jestem w tym zielony i się uczę ale umiem co raz więcej 😄

Wracając do tematu, chodzi mi o to że gdy mam program np.

#define L_PWM 5
#define L_DIR 4
#define R_PWM 6
#define R_DIR 9
#define PWM_MAX 165

void setup() {
  //Konfiguracja pinow od mostka H
  pinMode(L_DIR, OUTPUT);
  pinMode(R_DIR, OUTPUT);
  pinMode(L_PWM, OUTPUT);
  pinMode(R_PWM, OUTPUT);
}

void loop() {
  leftMotor(60); //Jazda do przodu z predkoscią 60%
  rightMotor(60);
  delay(1000); //Jazda przez sekunde

  leftMotor(-50); //Obrot w miejscu z predkoscią 50%
  rightMotor(50);
  delay(2000); //Czas trwania obrotu 2 sekundy

  leftMotor(-80); //Jazda do tyłu z predkoscią 80%
  rightMotor(-80);
  delay(1000); //Jazda do tyłu przez sekunde
}

void leftMotor(int V) {
  if (V > 0) { //Jesli predkosc jest wieksza od 0 (dodatnia)
    V = map(V, 0, 100, 0, PWM_MAX);
    digitalWrite(L_DIR, 0); //Kierunek: do przodu
    analogWrite(L_PWM, V); //Ustawienie predkosci
  } else {
    V = abs(V); //Funkcja abs() zwroci wartosc V  bez znaku
    V = map(V, 0, 100, 0, PWM_MAX);
    digitalWrite(L_DIR, 1); //Kierunek: do tyłu
    analogWrite(L_PWM, V); //Ustawienie predkosci    
  }
}

void rightMotor(int V) {
  if (V > 0) { //Jesli predkosc jest wieksza od 0 (dodatnia)
    V = map(V, 0, 100, 0, PWM_MAX);
    digitalWrite(R_DIR, 0); //Kierunek: do przodu
    analogWrite(R_PWM, V); //Ustawienie predkosci
  } else {
    V = abs(V); //Funkcja abs() zwroci wartosc V  bez znaku
    V = map(V, 0, 100, 0, PWM_MAX);
    digitalWrite(R_DIR, 1); //Kierunek: do tyłu
    analogWrite(R_PWM, V); //Ustawienie predkosci    
  }
}



void stopMotors() {
  analogWrite(L_PWM, 0); //Wylaczenie silnika lewego
  analogWrite(R_PWM, 0); //Wylaczenie silnika prawego
}

 

I gdy go już wgram to tak, działa ale jak wgram i po wgraniu odłączę kabel USB od arduino zostawiając przełącznik włączony (ten na samej górze) to program nie działą i arduino nie jeździ, a jak zostawie podłączony kabel to działa. Niewiem o co chodzi ale wiem że kabel jest niepotrzebny tylko niewiem ja to zrobić.

Odrazu mówie że mam te dwie płytki które na sobie są i ta na górze jest włączone bo świeci się czerwona i troche dalej zielona dioda. A na dole jest tylko zielona dioda. Ale jak odłącze kabel USB to na dolnej płytce zielona dioda się wyłącza i tak jakby nic niema. (Myślę że po prostu arduino musi zapamiętać ten program co wgrałem żeby móc to zrobić bez podłączonego kabla 🙂 ).

Pozdrawiam serdecznie.

Link do komentarza
Share on other sites

@Karox witam na forum! Jeśli po odłączeniu przewodu USB masz taką sytuację, że u góry świecą się diody, ale na Arduino UNO nie świeci się absolutnie nic, to wygląda jakby Arduino nie otrzymywało zasilania z shieldu (a powinno). To niestety może być jakiś fizyczny defekt shieldu. Zgłoś proszę sprawę do sprzedawcy, czyli zapewne do Botlandu, na pewno szybko pomogą rozwiązać ten temat 🙂 Mam nadzieję, że dalej obejdzie się już bez takich niespodzianek!

  • Pomogłeś! 1
Link do komentarza
Share on other sites

(edytowany)

Już działa!

Po prostu chyba jeden pin nie był do końca podpięty. Działają już dwie płytki.

I mam jeszcze pytanie, czy po wgraniu programu można odłączyć kabel USB?

Edytowano przez Karox
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

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...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.