Skocz do zawartości

Elebot - robot dla początkujących.


Treker

Pomocna odpowiedź

Witam. mam takie pytanie do tego fragmentu:

"W programie realizowana jest obsługa obu czujników, przełączenie się pomiędzy funkcjami programu następuje przez ustawienie stanu na Pind.5 (P3.5), "

Czy stan zero lub jedynka na tym porcie ma być ustawiony cały czas czy wystarczy tylko na chwile podać impuls?

Pozdrawiam:)

[ Dodano: 20-07-2012, 12:30 ]

Ps. Mam jeszcze jedno pytanie. Mam l293b. Więc muszę dać diody zabezpieczające. Zamierzam je podłączyć w ten sposób:

https://www.forbot.pl/forum/topics20/h-bridge-vt111.htm

Schemat L298. Czy będzie dobrze jak tak podłącze? Następną sprawą diddy te muszą mieć 1A. Serwo hxt900 pewnie nie pobiera 300mA, więc mogę dać mniejsze? I czy mogą być to zwykłe prostownicze?Czy to coś zmieni?

Pozdrawiam:)

Link do komentarza
Share on other sites

Witam, przepraszam za odświeżanie tematu ale nie chciałem zakładać nowego tematu gdzieś na forum. Mam taki problem z czujnikiem odbiciowym. Czujnik sam w sobie działa, lecz nie mogę sobie poradzić z wysterowaniem. Zmieniałem czasy przełączania bramek co 5ms, począwszy od 1 ms aż do 100ms i nic. Widać różnicę w przełączaniu się diód, lecz tak jakby czujnik nic nie odbierał. Czy może to być wina tego, ze zastosowałem TSOP31236, który jest jest na 36kHz a nie na 38kHz? Bardzo proszę i z góry dziękuje za pomoc

Link do komentarza
Share on other sites

Dzięki za pomoc, wymieniłem dzisiaj odbiornik na 38 kHz i robot od razu zadziałał 🙂 teraz sie męczę z wysterowaniem diód żeby działały na odpowiednią długość, ale jak widać że robot już odbiera to teraz jest to już przyjemna robota. Jeszcze raz dzięki za pomoc 🙂

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

Witam. Mam problem Taki iż zrobiłem wszystko tak jak w czesci pierwszej wszystko sie kreci tylko nie jedzie po lini jak powinien zbiera jednym czujnikiem wcześniej było wspomniane o edycji programu czy ma ktoś gotowy działający program do tego robota? czy mógł by mi ktoś podesłać /.?

Link do komentarza
Share on other sites

Komórka w garść i sprawdź czy wszystkie czujniki działają musisz włączyć kamerę i złapać w kadr czujnik jeśli w komórce zobaczysz światło to znaczy że działa jeśli nie to prawdopodobnie coś nie styka albo masz zimne luty

  • Lubię! 1
Link do komentarza
Share on other sites

Sprawdzałem juz komórką wszystkie swieca, po wgraniu programu cos niby jak by chcial jechac ale nie moze. Zimnego lutu raczej nie ma bo sprawdzane bylo, ale sprawdze dla pewności raz jeszcze.

Załączę jeszcze kod programu który zmieniłem po przeczytaniu któregoś posta ze nalezy podmienic Portb.4 na Portb.2 moze gdzieś cos zle wpisałem. Jeszcze go nie wgrywałem wole by ktos potwierdzil ze jest dobrze wszystko.


'Elebot wersja avr ATTiny2313
'***** konfiguracja portów *****
Config Portb = Output
Portb = &B00001100
Config Portd = Input
Portd = &B11111111

'****** deklaracja zmiennych i podprogramów ******
Dim Czas As Byte
Dim Ruchl As Bit
Dim Ruchp As Bit
Declare Sub Naprzod
Declare Sub Prawo
Declare Sub Lewo
Declare Sub Wstecz
Declare Sub Ddelay


'***** Program glowny *****
Do
'***** program obslugi czujnika odbiciowego *****
If Pind.5 = 1 Then
Czas = 50
Ruchl = 0
Ruchp = 0
Portb.1 = 1
Waitms 1
If Pind.6 = 0 Then Ruchl = 1
Portb.1 = 0
Portb.0 = 1
Waitms 1
If Pind.6 = 0 Then Ruchp = 1
Portb.0 = 0
If Ruchl = 1 And Ruchp = 0 Then Lewo
If Ruchl = 0 And Ruchp = 1 Then Prawo
If Ruchl = 0 And Ruchp = 0 Then Naprzod
If Ruchl = 1 And Ruchp = 1 Then Wstecz
End If

'***** program obslugi czujnika linii wersja LM324 *****
If Pind.5 = 0 Then
Czas = 5
If Pind.4 = 1 And Pind.3 = 0 And Pind.2 = 1 Then Lewo
If Pind.4 = 0 And Pind.3 = 1 And Pind.2 = 1 Then Prawo
If Pind.4 = 1 And Pind.3 = 1 And Pind.2 = 0 Then Naprzod
If Pind.4 = 1 And Pind.3 = 1 And Pind.2 = 1 Then Wstecz
End If

'***** program obslugi czujnika linii wersja 74HC14 *****
'If Pind.5 = 0 Then
'Czas = 5
'If Pind.4 = 1 And Pind.3 = 1 And Pind.2 = 0 Then Lewo
'If Pind.4 = 0 And Pind.3 = 1 And Pind.2 = 1 Then Prawo
'If Pind.4 = 1 And Pind.3 = 0 And Pind.2 = 1 Then Naprzod
'If Pind.4 = 1 And Pind.3 = 1 And Pind.2 = 1 Then Wstecz
'End If

Loop
'***** prodprogramy ruchu *****
Sub Prawo:
Portb.7 = 1 : Portb.6 = 0 : Portb.5 = 0 : Portb.2 = 0
Call Ddelay
End Sub

Sub Lewo
Portb.7 = 0 : Portb.6 = 0 : Portb.5 = 1 : Portb.2 = 0
Call Ddelay
End Sub

Sub Naprzod:
Portb.7 = 1 : Portb.6 = 0 : Portb.5 = 1 : Portb.2 = 0
Call Ddelay
End Sub

Sub Wstecz:
Portb.7 = 0 : Portb.6 = 1 : Portb.5 = 0 : Portb.2 = 1
Call Ddelay
End Sub

'*****podprogram opoznienia *****
Sub Ddelay:
Waitms Czas
End Sub

End
Link do komentarza
Share on other sites

Nie wiem może komuś się przyda w opisie jest fajny sposób sterowania LCD przez PCF8457 tyle że przykładowy program jest strasznie rozbudowany i trudno jest odsiać część odpowiedzialną za wyświetlanie znaków stąd daje tutaj kawełek kodu który to obsłuży

 $regfile = "m8def.dat"
$lib "Lcd_i2c.lib"

Const Pcf8574_lcd = 112                                    'Ustawienia expandera I2C czyli co do czeog podłączone
Const Pcf_d4 = 0
Const Pcf_d5 = 1
Const Pcf_d6 = 2
Const Pcf_d7 = 3
Const Pcf_rs = 6
Const Pcf_rw = 5
Const Pcf_e2 = 7
Const Pcf_e1 = 4

'Konfiguracja portów



Config I2cdelay = 15                                       'ustawienie prędkości magistrali
Config Scl = Portc.5                                       'ustawienie pinów magistrali I2C
Config Sda = Portc.4
Config Lcd = 16 * 2                                        'ustawienie typu wyowietlacza
Dim _lcd_e As Byte
_lcd_e = 128                                               'Adress LCD


Do
          Cls                                              'czyocimy ekaran z krzaków
      Portd = X
                 Locate 1 , 1                              'współrzędne wyświetlanego tekstu 1 kolumna 1 wiersz
       Lcd "Hello world!"                                  'jakis tekst

 Loop
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!

Gość
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.