Adarsh2425 / automatic-cruise-speed-control-using-lpc2148-proteus

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Automatic Cruise Speed Control Using LPC21xx (Proteus)

Overview

This project demonstrates an Automatic Cruise Control (ACC) system implemented on the LPC21xx microcontroller platform and simulated using Proteus. The ACC system automatically adjusts the vehicle's speed to maintain a safe distance from vehicles ahead. It includes distance measurement using a photo diode sensor, user control settings, and more.

Alt Text

Features

  • Set and maintain the maximum speed of the vehicle.
  • Define the minimum allowable distance between the vehicle and the one in front.
  • Start and stop ACC mode.
  • Store user-set parameters in an external EEPROM chip.
  • Beep indications for user feedback.
  • UART communication for data exchange.
  • PWM generation for controlling vehicle speed.
  • Integration with a photo diode sensor for distance measurement.

Operation

  1. Press SW1 to enter speed and distance setting mode.
  2. Use SW2 to select the parameter (even press for speed, odd press for distance).
  3. Adjust the selected parameter using SW3 (increment) and SW4 (decrement).
  4. Press SW1 to confirm ACC starting and store set data.
  5. Press SW1 again to start ACC mode.
  6. During ACC mode, the speed varies based on the distance between vehicles and is displayed on the LCD.
  7. Press SW1 to turn off ACC mode if it's active.

Constraints

  • Speed settings: 40-80 Kmph (adjust these values as needed).
  • Distance settings: 1-10 meters (for demonstration purposes, not to scale).
  • ACC mode will turn off with three beep indications if the speed falls below 40 Kmph.

Components Used

  • LPC2148 development board.
  • Photo diode sensor.
  • UART to USB converter.
  • Buzzer.
  • LCD.
  • External EEPROM IC.

Alt Text

Getting Started

To get started with this project, follow these steps:

  1. Connect the hardware components as per the provided circuit diagram.
  2. Build and flash the project code onto the LPC2148 development board.
  3. Simulate the project in Proteus for testing.

Project Structure

The project is organized as follows:

  • src/: Contains the C source code for the LPC2148 microcontroller.
  • simulation/: Includes Proteus simulation files.
  • docs/: Documentation and user manual.

Contributions

Contributions to this project are welcome. If you'd like to contribute, please follow these guidelines:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
  3. Make your changes and test thoroughly.
  4. Submit a pull request with a clear description of your changes.

License

This project is licensed under the MIT License.

Acknowledgments

Contact

For questions or inquiries, please contact Your Name.

About


Languages

Language:C 64.1%Language:Assembly 33.1%Language:HTML 2.8%