świetle robota naśladowcy

A

arash_micro

Guest
Witaj
Byłem zrobić "światło robot zwolennikiem" analogowych elementów
Teraz chcę uczynić z PIC oraz Steper silnikowych
Dobrze jest użyć polecenia POT == == język w podstawowym lub / D
((Polecenie POT czyta wartość rezystora, ale litle slow))
jeśli masz dobre łącze może mi pokazać.
Dzięki

 
Co masz na myśli światło wyznawcą?Robot, który wynika ze źródłem światła?

 
glenjoy napisał:

Co masz na myśli światło wyznawcą?
Robot, który wynika ze źródłem światła?
 
, not LightTylko dla linii,
a nie LightGreat site:
http://www.kmitl.ac.th/ ~ kswichit / LFrobot / LFrobot.htm

spróbuj wyszukiwarki Google ze codeword: "Line Follower" lub "Line Tracer"
Powodzenia

 
arash_micro napisał:

Nie

Ma głowę i włączyć go do źródła światła
 
Używam 4 FOTOCELL i pokrycia ich z ciemności papre
To dzieła
Czy mogę korzystać z nich w tym nowym projekcie, czy nie.dlaczego?

 
[quote = "glenjoy"] [quote = "arash_micro"] nr
Ma głowę i włączyć go do źródła światła [/ quote]

Następnie musisz dobrze Fotodetektor bardzo szerokim zakresie dynamiki, ponieważ większość phototransistor nasycone bardzo szybki. [/ Quote]

AGC może wyeliminować ten efekt, o ile obecne phototransistor trhough będą podlegać tune.

 
arash_micro napisał:

Używam 4 FOTOCELL i pokrycia ich z ciemności papre

To dzieła

Czy mogę korzystać z nich w tym nowym projekcie, czy nie.
dlaczego?
 
Inną opcją jest użycie tej proporcjonalny sygnał przed światłem komórki, wzmocnić i użyć jest bezpośrednio kontrolować Servo Motor zwrócić głowę w kierunku na miejscu brightes.
To może być całkiem interesujące podejście ..tak ..
Pomyśl o tym ..

 
Witaj

Mam mające własne Line Follower Robot, napisałem program PIC przy PICBasic Pro.

Kod:

'************************************************* ***************
'* Imię i nazwisko: Path Finder Robot.BAS *
'* Autor: Omar Udai Shacker *
"* Uwaga: Copyright (c) 2005 *
"* Data: 3/27/2005 *
"* Version: 1.8 *
'************************************************* ***************
'************************************************* ***************
'*************** Specjalnego rejestru Instalatora ***************
'************************************************* ***************

@ URZĄDZENIA XT_OSC, WDT_ON, PWRT_OFF, PROTECT_OFF

"Ra0 i RA1 Czy Wejścia, RA2-RA4 Czy Wyjścia
Trisa =% 00000011
"Nazwę rb0-RB3 Czy Wejścia, RB4-RB7 Czy Wyjścia
TRISB =% 00001111
"PORTB Pull-Ups są wyłączone, przerwania On Rising Edge nazwę rb0
OPTION_REG =% 11000000

'************************************************* ***************
'*********************** External Interrupt *****************
'********************* Instalacji w PICBasic Pro ****************
'************************************************* ***************

"Global Interrupt Enable, nazwę rb0 External Interrupt Enabled
INTCON =% 10010000

'************************************************* ***************
'***************** Zmienne globalne i Conts **************
'************************************************* ***************

TAK con 0 "Linia wykrycia lub przeszkodami Detected
NO CON 1 'Linia nr wykrycia lub nie stoi na przeszkodzie Detected

'************************************************* ***************

"Przełącznik przycisk Rutynowe Dla PortA.1
SW_ON VAR PORTA.1

'************************************************* ***************

"Fotodioda Receiver Zmienne cali Bit"
L_RX VAR PORTB.1
M_RX VAR PORTB.2
R_RX VAR PORTB.3

'************************************************* ***************

"Kierunek Monitor LED Varibles" Bit średnich "
L_LED VAR PORTA.2
M_LED VAR PORTA.3
R_LED VAR PORTA.4
GoSub LED_INIT

'************************************************* ***************

"L293 Zmienne Motor Driver" Sized Bit "
MOTOR_1A_PLUS VAR PORTB.7
MOTOR_2A_MINUS VAR PORTB.6
STEER_3A_PLUS VAR PORTB.5
STEER_4A_MINUS VAR PORTB.4
GoSub MOTOR_INIT

'************************************************* ***************
'************************************************* ***************
'************************************************* ***************
'********************* Program Główny *****************
'************************************************* ***************
'************************************************* ***************
'************************************************* ***************'************************************************* ***************
'*************** Włącz Przerwania w PBPro ***************
'***************** Przełącz na rutynowej ********************
'************************************************* ***************

Włącz przerwań w PICBasic Pro
Przerwania GoTo SW_OFF
SWITCH_ON:
JEŚLI SW_ON == 0 then SWITCH_ON

'************************************************* ***************
'**************** Zmienne Initialization **************
'************************************************* ***************

"Ogólne Inicjalizacja zmiennej
MAIN:
GoSub MOTOR_INIT
GoSub LED_INIT

'************************************************* ***************
'****************** Line Follower Rutynowe ***************
'************************************************* ***************

"Line Follower Fotodioda Sprawdź Routine
LINE_FOLLOWER:
IF (L_RX == NO) i (M_RX == NO) i (R_RX == NO) Następnie ERROR
IF (L_RX == NO) i (M_RX == NO) i (R_RX == YES) a następnie w prawo
IF (L_RX == NO) i (M_RX == YES) I (R_RX == NO), a następnie przekazać
IF (L_RX == NO) i (M_RX == YES) I (R_RX == YES) a następnie w prawo
IF (L_RX == YES) I (M_RX == NO) i (R_RX == NO), a następnie w lewo
IF (L_RX == YES) I (M_RX == NO) i (R_RX == YES) Następnie ERROR
IF (L_RX == YES) I (M_RX == YES) I (R_RX == NO), a następnie w lewo
IF (L_RX == YES) I (M_RX == YES) I (R_RX == YES) a następnie przekazać

'************************************************* ***************
'********************* Przekaż Rutynowe ******************
'************************************************* ***************

"Naprzód Routine
FORWARD:
L_LED = L_RX
M_LED = M_RX
R_LED = R_RX
LOW MOTOR_2A_MINUS
LOW STEER_3A_PLUS
LOW STEER_4A_MINUS
PWM MOTOR_1A_PLUS, 122, 1
LOW MOTOR_1A_PLUS
IF (L_RX == NO) i (M_RX == YES) I (R_RX == NO), a następnie przekazać
IF (L_RX == YES) I (M_RX == YES) I (R_RX == YES) a następnie przekazać
IF (L_RX == NO) i (M_RX == NO) i (R_RX == NO), a następnie przekazać
GoTo GŁÓWNA

'************************************************* ***************
'********************** Prawo Rutynowe *******************
'************************************************* ***************

"Skręć w prawo Routine
PRAWO:
L_LED = L_RX
M_LED = M_RX
R_LED = R_RX
LOW MOTOR_2A_MINUS
WYSOKIE STEER_3A_PLUS
LOW STEER_4A_MINUS
PWM MOTOR_1A_PLUS, 126, 2
LOW MOTOR_1A_PLUS
IF (L_RX == NO) i (M_RX == NO) i (R_RX == YES) a następnie w prawo
IF (L_RX == NO) i (M_RX == YES) I (R_RX == YES) a następnie w prawo
IF (L_RX == NO) i (M_RX == NO) i (R_RX == NO), następnie w prawo
GoTo GŁÓWNA

'************************************************* ***************
'********************** Pozostało Rutynowe ********************
'************************************************* ***************

"Turn Left Routine
LEFT:
L_LED = L_RX
M_LED = M_RX
R_LED = R_RX
LOW MOTOR_2A_MINUS
LOW STEER_3A_PLUS
WYSOKIE STEER_4A_MINUS
PWM MOTOR_1A_PLUS, 126, 2
LOW MOTOR_1A_PLUS
IF (L_RX == YES) I (M_RX == NO) i (R_RX == NO), a następnie w lewo
IF (L_RX == YES) I (M_RX == YES) I (R_RX == NO), a następnie w lewo
IF (L_RX == NO) i (M_RX == NO) i (R_RX == NO), a następnie w lewo
GoTo GŁÓWNA

'************************************************* ***************
'********************** Błąd Rutynowe *******************
'************************************************* ***************

"Błąd Routine
BŁĄD:
L_LED = L_RX
M_LED = M_RX
R_LED = R_RX
LOW MOTOR_2A_MINUS
LOW STEER_3A_PLUS
LOW STEER_4A_MINUS
PWM MOTOR_1A_PLUS, 122, 1
LOW MOTOR_1A_PLUS
GoTo GŁÓWNA

'************************************************* ***************
'***************** MOTOR Initailization ******************
'************************************************* ***************

MOTOR_INIT:
"L293 inicjalizacji sterownika silnika
LOW MOTOR_1A_PLUS
LOW MOTOR_2A_MINUS
LOW STEER_3A_PLUS
LOW STEER_4A_MINUS
Wróć

'************************************************* ***************
'************** LED Initailization Kierunek *************
'************************************************* ***************

LED_INIT:
WYSOKIE L_LED
WYSOKIE M_LED
WYSOKIE R_LED
Wróć

'************************************************* ***************
'****************** Interrupt Handler Rutynowe *****************
'************************************************* ***************

Wyłączyć
SW_OFF:
GoSub MOTOR_INIT
GoSub LED_INIT
INTCON.1 = 0
Resume SWITCH_ON
Włączyć

'************************************************* ***************
'********************* Koniec *******************
'************************************************* ***************

Koniec
Przepraszamy, ale musisz się zalogować, aby wyświetlić ten załącznik

 
metal napisał:

WitajMam mające własne Line Follower Robot, napisałem program PIC przy PICBasic Pro.Kod:'************************************************* ***************

'* Imię i nazwisko: Path Finder Robot.BAS *

'* Autor: Omar Udai Shacker *

"* Uwaga: Copyright (c) 2005 *

"* Data: 3/27/2005 *

"* Version: 1.8 *

'************************************************* ***************

'************************************************* ***************

'*************** Specjalnego rejestru Instalatora ***************

'************************************************* ***************@ URZĄDZENIA XT_OSC, WDT_ON, PWRT_OFF, PROTECT_OFF"Ra0 i RA1 Czy Wejścia, RA2-RA4 Czy Wyjścia

Trisa =% 00000011

"Nazwę rb0-RB3 Czy Wejścia, RB4-RB7 Czy Wyjścia

TRISB =% 00001111

"PORTB Pull-Ups są wyłączone, przerwania On Rising Edge nazwę rb0

OPTION_REG =% 11000000'************************************************* ***************

'*********************** External Interrupt *****************

'********************* Instalacji w PICBasic Pro ****************

'************************************************* ***************"Global Interrupt Enable, nazwę rb0 External Interrupt Enabled

INTCON =% 10010000'************************************************* ***************

'***************** Zmienne globalne i Conts **************

'************************************************* ***************TAK con 0 "Linia wykrycia lub przeszkodami Detected

NO CON 1 'Linia nr wykrycia lub nie stoi na przeszkodzie Detected'************************************************* ***************"Przełącznik przycisk Rutynowe Dla PortA.1

SW_ON VAR PORTA.1'************************************************* ***************"Fotodioda Receiver Zmienne cali Bit"

L_RX VAR PORTB.1

M_RX VAR PORTB.2

R_RX VAR PORTB.3'************************************************* ***************"Kierunek Monitor LED Varibles" Bit średnich "

L_LED VAR PORTA.2

M_LED VAR PORTA.3

R_LED VAR PORTA.4

GoSub LED_INIT'************************************************* ***************"L293 Zmienne Motor Driver" Sized Bit "

MOTOR_1A_PLUS VAR PORTB.7

MOTOR_2A_MINUS VAR PORTB.6

STEER_3A_PLUS VAR PORTB.5

STEER_4A_MINUS VAR PORTB.4

GoSub MOTOR_INIT'************************************************* ***************

'************************************************* ***************

'************************************************* ***************

'********************* Program Główny *****************

'************************************************* ***************

'************************************************* ***************

'************************************************* ***************
'************************************************* ***************

'*************** Włącz Przerwania w PBPro ***************

'***************** Przełącz na rutynowej ********************

'************************************************* ***************Włącz przerwań w PICBasic Pro

Przerwania GoTo SW_OFF

SWITCH_ON:

JEŚLI SW_ON == 0 then SWITCH_ON'************************************************* ***************

'**************** Zmienne Initialization **************

'************************************************* ***************"Ogólne Inicjalizacja zmiennej

MAIN:

GoSub MOTOR_INIT

GoSub LED_INIT'************************************************* ***************

'****************** Line Follower Rutynowe ***************

'************************************************* ***************"Line Follower Fotodioda Sprawdź Routine

LINE_FOLLOWER:

IF (L_RX == NO) i (M_RX == NO) i (R_RX == NO) Następnie ERROR

IF (L_RX == NO) i (M_RX == NO) i (R_RX == YES) a następnie w prawo

IF (L_RX == NO) i (M_RX == YES) I (R_RX == NO), a następnie przekazać

IF (L_RX == NO) i (M_RX == YES) I (R_RX == YES) a następnie w prawo

IF (L_RX == YES) I (M_RX == NO) i (R_RX == NO), a następnie w lewo

IF (L_RX == YES) I (M_RX == NO) i (R_RX == YES) Następnie ERROR

IF (L_RX == YES) I (M_RX == YES) I (R_RX == NO), a następnie w lewo

IF (L_RX == YES) I (M_RX == YES) I (R_RX == YES) a następnie przekazać'************************************************* ***************

'********************* Przekaż Rutynowe ******************

'************************************************* ***************"Naprzód Routine

FORWARD:

L_LED = L_RX

M_LED = M_RX

R_LED = R_RX

LOW MOTOR_2A_MINUS

LOW STEER_3A_PLUS

LOW STEER_4A_MINUS

PWM MOTOR_1A_PLUS, 122, 1

LOW MOTOR_1A_PLUS

IF (L_RX == NO) i (M_RX == YES) I (R_RX == NO), a następnie przekazać

IF (L_RX == YES) I (M_RX == YES) I (R_RX == YES) a następnie przekazać

IF (L_RX == NO) i (M_RX == NO) i (R_RX == NO), a następnie przekazać

GoTo GŁÓWNA'************************************************* ***************

'********************** Prawo Rutynowe *******************

'************************************************* ***************"Skręć w prawo Routine

PRAWO:

L_LED = L_RX

M_LED = M_RX

R_LED = R_RX

LOW MOTOR_2A_MINUS

WYSOKIE STEER_3A_PLUS

LOW STEER_4A_MINUS

PWM MOTOR_1A_PLUS, 126, 2

LOW MOTOR_1A_PLUS

IF (L_RX == NO) i (M_RX == NO) i (R_RX == YES) a następnie w prawo

IF (L_RX == NO) i (M_RX == YES) I (R_RX == YES) a następnie w prawo

IF (L_RX == NO) i (M_RX == NO) i (R_RX == NO), następnie w prawo

GoTo GŁÓWNA'************************************************* ***************

'********************** Pozostało Rutynowe ********************

'************************************************* ***************"Turn Left Routine

LEFT:

L_LED = L_RX

M_LED = M_RX

R_LED = R_RX

LOW MOTOR_2A_MINUS

LOW STEER_3A_PLUS

WYSOKIE STEER_4A_MINUS

PWM MOTOR_1A_PLUS, 126, 2

LOW MOTOR_1A_PLUS

IF (L_RX == YES) I (M_RX == NO) i (R_RX == NO), a następnie w lewo

IF (L_RX == YES) I (M_RX == YES) I (R_RX == NO), a następnie w lewo

IF (L_RX == NO) i (M_RX == NO) i (R_RX == NO), a następnie w lewo

GoTo GŁÓWNA'************************************************* ***************

'********************** Błąd Rutynowe *******************

'************************************************* ***************"Błąd Routine

BŁĄD:

L_LED = L_RX

M_LED = M_RX

R_LED = R_RX

LOW MOTOR_2A_MINUS

LOW STEER_3A_PLUS

LOW STEER_4A_MINUS

PWM MOTOR_1A_PLUS, 122, 1

LOW MOTOR_1A_PLUS

GoTo GŁÓWNA'************************************************* ***************

'***************** MOTOR Initailization ******************

'************************************************* ***************MOTOR_INIT:

"L293 inicjalizacji sterownika silnika

LOW MOTOR_1A_PLUS

LOW MOTOR_2A_MINUS

LOW STEER_3A_PLUS

LOW STEER_4A_MINUS

Wróć'************************************************* ***************

'************** LED Initailization Kierunek *************

'************************************************* ***************LED_INIT:

WYSOKIE L_LED

WYSOKIE M_LED

WYSOKIE R_LED

Wróć'************************************************* ***************

'****************** Interrupt Handler Rutynowe *****************

'************************************************* ***************Wyłączyć

SW_OFF:

GoSub MOTOR_INIT

GoSub LED_INIT

INTCON.1 = 0

Resume SWITCH_ON

Włączyć'************************************************* ***************

'********************* Koniec *******************

'************************************************* ***************Koniec
 
Hello glenjoy

Czy to odpowiedź ze względu na punkty zbiórki, prosty sposób.

Ten projekt zajęło mi miesięcy ciężkiej pracy, to przyszedł powiedzieć, że Jego naśladowcy linii światła zwolennik potrzebne.

 
Metal Dziękujemy za Twój kod i glenjoy dla adwokata
ale ja nie otrzymam odpowiedzi jeszcze
My Robot może zwrócić się do ludzi
zarzuty nie kwestionują
Przepraszam za mój angielski

 
Co masz na myśli "zwraca się do człowieka" jego ro quistion Sifi chcesz go do śledzenia, a następnie ludzi.

 
Cześć,

arash_micro napisał:

Metal Dziękujemy za Twój kod i glenjoy dla adwokata

ale ja nie otrzymam odpowiedzi jeszcze

My Robot może zwrócić się do ludzi

zarzuty nie kwestionują

Przepraszam za mój angielski
 
Gidimiz Hi
Dziękujemy za guid
ale ja mam zrobić je wszystkie w analogowych

 
Cześć,

arash_micro napisał:

Gidimiz Hi

Dziękujemy za guid

ale ja mam zrobić je wszystkie w analogowych
 
Witaj

Możesz użyć pasywnego Infra Red czujniki do naśladowania Homansa, ale w tym przypadku będzie śledzić każdy obiekt, który emituje podczerwień, w tym żarówki

<img src="http://www.edaboard.com/images/smiles/icon_wink.gif" alt="Wink" border="0" />Każdy coś innego, co need you are welcome.

 

Welcome to EDABoard.com

Sponsor

Back
Top