In cabs and autorickshaws, a taximeter determines the fare based on the distance traveled. Taxi Fare Meter circuit calculates the trip fee based on the rate per kilometer and displays the distance traveled as well as the total fare.
The circuit (shown in Fig. 1) consists of an Arduino Uno Board, a 162 LCD display, and an inductive proximity sensor coupled to CON2. To sense the rotation of a rotating object such as a wheel’s rim or a wheel nut, a metal target such as a bolt-head is fixed on the rotating object.
The sensor generates a pulse whenever the metal target crosses it while rotating. Through diode D1, the pulse is sent to the Arduino’s first interrupt pin (pin 2). The diode performs the function of a voltage level converter. The proximity sensor’s output pulse voltage is 0-12V because its working voltage is 12V.
Because the Arduino cannot sustain 12V energy, a diode is employed to convert it to a 5V logic pulse. The diode does not conduct if the sensor output is high, and 5V is accessible at pin 2 of the Arduino through pull-up resistor R2. When the sensor output is low, the diode becomes forward biassed and pulls pin 2 to the ground, resulting in a logic low at Board1 pin 2.
The Arduino counts the number of pulses for each wheel spin and translates them to kilometers (km) using the program. The distance is then multiplied with the rate per kilometer to generate trip price for the distance gone. The distance and fare are displayed on LCD1.
The LCD1 displays the message “TRIP IS TO BEGIN, HAPPY JOURNEY” before the vehicle is booked. Switch S1 is pressed when it is hired, and LCD1 flashes “TRIP STARTED, HAPPY JOURNEY” for half a second. Following that, the distance traveled and the trip cost is presented on LCD1 in real-time.
The total fare displayed on LCD1 is noted at the end of the trip, and switch S1 is pressed again to register the trip’s conclusion. For one second, LCD1 displays “TRIP COMPLETED, THANK YOU,” before returning to the original message for the next trip.
The proximity sensor in the circuit (see Fig. 2) is a PNP type normally-open (NO) proximity sensor that detects things without physical touch up to its nominal range—the greatest distance that this sensor can detect. Because there are no mechanical parts and no physical touch between the sensor and the sensed items, it has a high level of dependability and long functioning life.
Construction and testing
The circuit can be built using the single-side PCB configuration shown in Fig. 3. Figure 4 depicts the component layout. Connect 12V and Gnd to CON1 and the proximity sensor to CON2. Assemble the circuit on the PCB. S1 is the circuit’s stop/start switch. Enclose the circuit after it has been assembled in a suitable enclosure.
The taxi fare meter program is written in Arduino programming language (sketch). Arduino IDE is used to compile and upload the program to the Arduino board. Select the correct board from the Board Tools menu in Arduino IDE, select COM port, and upload the program through the standard USB port in the computer.
Please keep the following in mind:
- The majority of taxis (particularly cars) use 40.6cm (16-inch) dia tires, which have a circumference of 128cm (0.00128km). As a result, each turn of the wheel travels 0.00128 kilometers.
- The cost per km in this project is fixed at $9, although it can be adjusted in the program.
- To acquire a better resolution of the distance traveled, more than one metal target might be employed. Five targets were employed in the experiment.
- Depending on the type of sensor employed, a pull-up or pull-down resistor may be required at the sensor’s output.
- It is possible to use a proximity sensor with a nominal range of 5 to 10mm.