Skocz do zawartości

Arduino piszczy przy wgraniu kodu


piterx

Pomocna odpowiedź

Cześć.

Płytka którą pokazałeś to shield do prototypowania. Tyle, że po stronie dolnej źle wlutowane są piny. Przyłóż ją do Arduino z zobaczysz, że zewnętrzne otwory dokładnie pasują do złączy w płytce bazowej. Trzeba dolutować piny w tych miejscach, a to co aktualnie wystaje usunąć.

Ja stosuję w moich robocikach cztery akumulatory AA NiMH. Dają one w sumie 4,8V więc do Arduino podciągam napięcie przetwornicą a do silników podaję bezpośrednio. Jeździ mi na tym bez problemu robot na takich samych napędach jak Twoje, a nawet, od biedy, kroczy czworonóg z 12-toma serwami.

Mostek zmienić trzeba, bo ten który stosujesz na starcie zabiera Ci z 1,5V.

Zainwestuj w lutownicę i multimetr. To nie są wielkie wydatki, a łatwiej zdiagnozujesz problem i uzyskasz lepsze połączenia elektryczne. Bo takie podłączenie silników jak na zdjęciu nie ma prawa nie sprawiać problemów.

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

Uwaga zabawy ciąg dalszy. Kiedy chce sprawdzic ten program, Arduino skreca w miejscu. Natomiast kiedy sprawdzam go ponownie lecz, podłaczonego do komputera - skreca dopiero jak podstawie ręke.

Jakieś pomysły?

//pin 7,8 - 1 silnik
//pin 6 PWM dla 1 silnika
//silnik 1 - prawy silnik
//pin 2,3 -2 silnik
//pin 5 to PWM dla silnika 2
//silnik 2 - lewy silnik

#define trig 12
#define echo 11

void setup() { 
 //Serial.begin(9600);
 pinMode(trig, OUTPUT);
 pinMode(echo, INPUT);
 pinMode(2,OUTPUT);
 pinMode(3,OUTPUT);
 pinMode(5,OUTPUT);
 pinMode(6,OUTPUT);
 pinMode(7,OUTPUT);
 pinMode(8,OUTPUT);

}
int y = 0;
void loop()  {   
 pomiar();
 //Serial.println(pomiar());
 delay(300);
 if(pomiar() > 15)
 {do_przodu(255);};
 if(pomiar() < 15)
 {y = random(1,3);
 if(y == 2)
 {W_PRAWO();}
 else
 {W_LEWO();}
 }

}





void do_przodu(int x)
{
 analogWrite(5, x);
 analogWrite(6, x);
 digitalWrite(8, LOW); 
 digitalWrite(7, HIGH);
 digitalWrite(3,LOW);
 digitalWrite(2,HIGH);
 delay(300);         
}

void w_prawo()
{
 analogWrite(5, 255);
 analogWrite(6, 180);
 digitalWrite(8, LOW); 
 digitalWrite(7, HIGH);
 digitalWrite(3,LOW);
 digitalWrite(2,HIGH);
 delay(700);
}

void W_PRAWO()
{  analogWrite(5,255);
 analogWrite(6,255);
 digitalWrite(8, HIGH); 
 digitalWrite(7, LOW);
 digitalWrite(3,LOW);
 digitalWrite(2,HIGH);
 delay(500);
}  

void w_lewo()
{
 analogWrite(6, 255);
 analogWrite(5, 180);
 digitalWrite(8, LOW); 
 digitalWrite(7, HIGH);
 digitalWrite(3,LOW);
 digitalWrite(2,HIGH); 
 delay(700); 
}

void W_LEWO()
{
 analogWrite(6, 255);
 analogWrite(5, 255);
 digitalWrite(8, LOW); 
 digitalWrite(7, HIGH);
 digitalWrite(3,HIGH);
 digitalWrite(2,LOW); 
 delay(500);
}

int pomiar()
{long czas, dystans;
 digitalWrite(trig,LOW);
 delayMicroseconds(2);
 digitalWrite(trig,HIGH);
 delayMicroseconds(10);
 digitalWrite(trig,LOW);
 czas = pulseIn(echo,HIGH);
 dystans = czas/58;
 return dystans;
}

[ Dodano: 27-01-2018, 22:39 ]

W skrócie podlaczony do kompa daje efekt, ale gdy go odlacze nie jest juz tak pieknie...

Link do komentarza
Share on other sites

Arduino podłączone do PC zasilane jest z portu USB - zmieniłeś te baterie? Czujnik ultradźwiękowy jest mało precyzyjny, źle reaguje na np. krawędzie, rodzaj powierzchni, kąt pod którym znajduje się przeszkoda, rodzaj powierzchni .... No ale skoro mówisz, że ten sam program działa dobrze przy połączeniu z PC, a z baterii już nie to różnica jest tylko jedna - zasilanie.

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

natomiast 8 PIN zasilam Vinem a 16 - 5V

Nie rozumiem Vin połączyłeś z 8 pinem Arduino? Jeśli tak to raczej moim zdaniem źle. Pin 8 Arduino nie jest przeznaczony do "podłączania" napięcia większego niż 5V. Aż się prosi o schemat Twojego pojazdu.

Link do komentarza
Share on other sites

"4, 5, 12, 13 – łączymy razem do masy (GND)

16 – zasilanie Vcc części logicznej (5V)

8 – zasilanie Vc silników (do 36V)"

[ Dodano: 27-01-2018, 23:34 ]

Podlaczylem dziala pieknie tylko musze funkcje skrocic czasowo

Link do komentarza
Share on other sites

Przeczytaj to: https://forbot.pl/blog/kurs-arduino-sterowanie-silnikami-dc-petla-for-id8311

Staraj się o precyzyjne wypowiedzi - łatwiej będzie zrozumieć o co Ci chodzi. Jak widzisz pisząc pin 8 można odnieść wrażenie, że piszesz o porcie Arduino, a nie Vs (8) mostka H.

7-01-2018, 23:34 ]

Podlaczylem dziala pieknie tylko musze funkcje skrocic czasowo

Czyli problem był w bateriach? Bateria 9V nie ma dużej pojemności więc na długo nie starczy. Jak piszesz o czasie to by uniknąć rozczarowań poczytaj także koniecznie to:

https://forbot.pl/blog/kurs-arduino-ii-wielozadaniowosc-opoznienia-z-millis-id18418

Link do komentarza
Share on other sites

Zasilanie do silników nie idzie, mam nadzieję, przez Arduino? Bo jeśli tak, to jesteś na dobrej drodze do zabicia tej płytki. Rozdziel zasilania. Osobno logika 5V a osobno silniki. Zostaw silniki na 4xAA i podłącz jednocześnie 6F22. Jeśli masz w domu Powerbanka, to możesz spróbować zasilić z niego Arduino. Pamiętaj tylko o wspólnych masach. Ja miałem ten sam problem z połączeniem dalmierza ultradźwiękowego i silników i to mimo zasilania z LiPola. Bez porządnego filtrowania, silniki wprowadzają bardzo duże zakłócenia.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

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