Intelligent Train Engines

Connections:

  1. 24 VAC is rectified by diode bridge D1 and filtered through C1 and given to all the regulated ICs as input.
  2. The output of 7805 is connected to 89C51 and TSOP and also to all the LEDs.
  3. Output of 7812 (last one) is connected to common coil terminal and to ULN
  4. The outputs of middle four regulated ICs are connected to DC motor through relay contacts.
  5. Output of TSOP is connected with pin P3.3 (INT1) of microcontroller
  6. All five leds are connected with port P0 as shown
  7. Input of ULN is connected with Port 1 pins P1.0-P1.3, and outputs are connected with second terminal of relay coil.

Operation:

  1. TSOP will detect the 38 KHz IR beam and gives the interrupt to 89C51.
  2. 89C51 will indicate the interrupt event on first (green) LED and energizes only one particular relay through ULN chip.
  3. When any of the four relay get energized the motor will get supply from it and it will start running
  4. As voltage is less it will run with less speed
  5. So now its the function of microcontroller to receive signal from IR sensor, decrease the speed of train gradually in four steps and then stop it. And this is done by software embedded in to 89C51.

How the project works?

  1. Initially when you switch on the supply 89C51 will switch all the relays RL1- RL4 one by one. So motor will get 9-12-15-18 V supply in steps and gradually increases its speed reaches max speed indicated by first red LED (P0.0).
  2. Now if the signal is green then train will cross the pole with same pole
  3. But if signal becomes red in between then IR sensor will detect IR beam and interrupts the 89C51
  4. Getting first interrupt 89C51 will switch off RL4 and switch on RL3 so now motor will get 15 V supply and its speed will be decreased. That’s indicated by second red LED (P0.1)
  5. Now 89C51 will wait for some time (2 to 3 sec) and train goes on with same speed. Again if still red signal is on 89C51 will be interrupted and this time it will switch on RL2. so now motor gets 12V supply and again its speed will be decreased indicated by third red LED (P0.2)
  6. The same procedure repeats if 89C51 is interrupted third times. Now motor runs at min speed (9 V) indicated by fourth red LED (P0.3)
  7. After same delay on receiving fourth interrupt all the relays will be switched off and motor is now stop so the train is also stopped. This is indicated by green LED.
  8. After this interrupts will be disabled. So now when red signal becomes green driver must reset the controller to start the train again.

The complete pseudo code with necessary comments is as given

org 00h
mov r0,#01h                     ; initialize the counter to count no. of interrupts
sjmp over                          ; jump above the interrupt subroutine
org 0013h                         ; interrupt 1 subroutine location
mov ie,#00h                     ; disable interrupt first
clr p0.0                             ; interrupt indication on green led
inc r0                                ; increment counter
acall delay                        ; call 0.1 sec delay
setb p0.0                           ; reset green led
cjne r0,#02h,nxt2             ;if counter is 2 then decrease speed be one step (15 V)
mov p0,#0fbh
mov p1,#04h                    ; give indication on second red led
sjmp out
nxt2: cjne r0,#03h,nxt3    ; if counter is 3 then decrease speed be two step (12 V)
mov p0,#0f7h
mov p1,#02h                    ; give indication on third red led
sjmp out
nxt3: cjne r0,#04h,nxt4    ; if counter is 4 then decrease speed be three step (9 V)
mov p0,#0efh
mov p1,#01h                     ; give indication on fourth red led
sjmp out
nxt4: cjne r0,#05h,out       ; if counter is 5 then stop the train
mov p0,#0feh
mov p1,#00h                     ; indicate it by green led.
out:   acall dely                  ; call 2 sec delay every time when speed is changed
mov ie,#84h                      ; enable interrupt again
reti                                     ; return from interrupt
over:mov p1,#01h            ; main program starts from here starts train with min speed
acall dely                           ; and gradually increase it to max in four step
mov p1,#02h                     ; with 2 sec delay in between
acall dely
mov p1,#04h
acall dely
mov p1,#08h
mov p0,#0fdh
mov ie,#84h                      ; enable the interrupt
here: sjmp here                 ; continue loop
delay:
mov r6,#64h                     ; 0.1 sec delay
lop2:mov r5,#0FAh
lop1:nop
nop
djnz r5,lop1
djnz r6,lop2
ret
dely:
mov r7,#15h                         ; 2 sec delay
lop5:mov r6,#64h
lop4:mov r5,#0FAh
lop3:nop
nop
djnz r5,lop3
djnz r6,lop4
djnz r7,lop5
ret
end

by
Ashutosh M Bhatt
www.multyremotes.com

Editorial Team
Editorial Team

We are a group of young techies trying to provide the best study material for all Electronic and Computer science students. We are publishing Microcontroller projects, Basic Electronics, Digital Electronics, Computer projects and also c/c++, java programs.

321 thoughts on “Intelligent Train Engines

  1. respected sir
    i m doing my final year project on intelligent train engine plz send me list of component nd details related to project….

  2. sir, i am doing project on intelligent train so i want all it’s component list nd procedure tat how to make it and also which is better in intelligent train using pic microcontroller or 8051 microcontroller……………… plz thanq.

  3. I AM DOING BTECH APPLIED ELECTRONICS AND INSTRUMENTATION…I WOULD LIKE TO DO THIS PROJECT
    BUT I HAVE SOME DOUBT ABOUT “IR LED” AND IR SENSOR [TSOP]
    1.WHAT IS THE RANGE OF IR LED ?
    2.WHAT IS PROPER RANGE OF TSOP?
    3. WHAT IS THE DISTANCE BETWEEN THE IR LED AND TSOP?
    4.IN OUR PROJECT WE FACE SMALL PROBLEM ,TRANSMITTER CIRCUIT AND RECEIVER CIRCUT HAVE INDIVIDUAL OUTPUT. BUT TSOP IS NOT SENSING THE IR BEAM.
    I HUMBLY REQUEST YOU TO PLZ REPLY THIS MSG

  4. what will happen, if the red signal gets on when the train is very close to the signal pole? how our project will handle this situation..

    Plz answer as soon as possible..

  5. sir i want to do this project…so plz send me components list ,crt diagram,code and neccesesary instruction..

    what will happen, if the red signal gets on when the train is very close to the signal pole? how our project will handle this situation..
    Plz answer as soon as possible..

  6. sir,i am in 4th year and i am doing this project.but i dont have c code of this project.and my second problem is how to burn this code in controller.i am using keil uvision3 and flash magic.plz help me.
    plz ans asap.

  7. the value of all components basically capacitors and resistors are not displayed properly.its very difficult to buy appropriate components.so kindly send me the components list thnks.

Leave a Reply

Your email address will not be published. Required fields are marked *

Get the latest updates on your inbox

Be the first to receive the latest updates from Codesdoc by signing up to our email subscription.

    StudentProjects.in