The Ferrous Metal Detection Gate (FDS) is a sophisticated system designed to enhance safety for MRI room access by detecting ferrous metals. This system utilizes a Raspberry Pi Pico and Raspberry Pi 5 to facilitate communication with various sensors, providing both auditory and visual feedback to the user.
- Utilizes a ferrous metal detector for metal detection
- Provides auditory and visual feedback to the user
- Employs both Raspberry Pi Pico and Raspberry Pi 5
- Communicates with multiple sensors for enhanced detection accuracy
- All the wanted peripherals (buttons, sensors etc.)
- Micro usb cable (ensure it has data wires)
- Raspberry Pi 25W, power supply
- USB to 3.5mm audio adapter
- Display/monitor for imageoutput
- MicroHDMI to HDMI adapter
- Python 3.12 or higher
- Required Python libraries (listed in
requirements_rpi5.txt
for Raspberry Pi 5) - MicroPython libraries for Raspberry Pi Pico (listed in
requirements_pico.txt
)
-
Install Dependencies Since the Pico runs on MicroPython for this project, you'll need to upload the required libraries manually or use a tool like
mpremote
.mpremote mip install micropython-neopixel micropython-machine micropython-time micropython-i2c micropython-uart
-
Upload Scripts to Pico Upload the relevant
.py
files to the Pico:mpremote fs cp hardware_s2g.py :hardware_s2g.py mpremote fs cp system_utils.py :system_utils.py mpremote fs cp main.py :main.py
-
Prepare MicroSD Card Install Raspbian 64-bit (with desktop) on a 32GB MicroSD card (using Raspberry Pi Imager, for example). Once installed, boot the Raspberry Pi 5, connect it to the internet, and open a terminal with root permissions.
-
Install Python Dependencies
pip install -r requirements_rpi5.txt
-
Install System Dependencies
sudo apt-get update sudo apt-get install feh vlc
-
Run the Application Navigate to the project directory and start the main script:
python main.py
- Connect the Raspberry Pi Pico and Raspberry Pi 5 via a MicroUSB cable.
- Start the
main.py
script on the Raspberry Pi 5. - The system will initialize, and the sensors will begin to monitor for ferrous metals. The NeoPixel LEDs and the display will provide feedback based on the detection status.
We welcome contributions to the FDS-Scan2Go project. If you would like to contribute, please fork the repository and submit a pull request.
If you would like to emplement this code into your own project, ensure to give credit to the original author and mention any significant changes or improvements.
This project is licensed under the MIT License. See the DISCLAIMER file for more details.