In the Elsys project course (TTT4270) in spring 2026, our group built a prototype sensor system for NTNU’s AutoFerry project, the university’s work on small autonomous passenger ferries. It looks ahead and answers one question: is it safe, or is there danger?
Three sensors feed into it:
- Camera. A YOLO model trained on our own photos classifies each frame as danger or safe. We converted it to ncnn so it runs fast enough on the Pi.
- Ultrasound. An Arduino reads four ultrasonic sensors and sends distance plus a z-score (how far each reading is from its baseline) to the Pi over I2C, eight bytes per sensor.
- Radar. The Pi connects to the radar over the network and reads how much energy comes back from the area in front.
A small scikit-learn model combines the three scores into a single yes or no. The radar also has a hard limit that triggers on its own, whatever the model says. The result is pushed to a Flask page: green for safe, red for danger.
Where it stopped
This was a prototype, built and shown within the course. The natural next step would have been to connect the system to NTNU’s AutoFerry itself.

