Projects:2021s1-13413 360˚ Camera Dolly/Rig

From Projects
Jump to: navigation, search

Introduction

Virtual Reality (VR) is increasingly prevalent technology that is seeing use across a lot of industries. Mainly in the electronic entertainment industry such as video games. However VR can also be used for educational purposes where a user can be placed in simulated environment where they may gain experience and insight by interacting with the environment [1]. The purpose of the 360° Camera Dolly/Rig Project is to create a camera dolly/rig with a mounted 360° camera. The rig will be operated remotely such that the camera can capture footage to be used in a VR simulation without unneeded intrusion. A prototype of this Rig has been built by the Engineering Students of the University of Adelaide in 2019, this year's iteration aim's to improve various aspects of said prototype for better functionality.

Project team

Project students

  • Harrison Boyce
  • Dongshen Huang

Supervisors

  • Said Al-Sarawi
  • Hong Gunn Chew

Advisors

  • Adelaide Nursing School

Aims

Goal

  • Develop the prototype of project in 2019 with better performance.

Objectives

  • Improve the control method to reduce the control delay for every actions of the rover.
  • Improve the rover movement to have a gradual speed change.
  • Develop a better collision avoidance system to detect any obstacles on its way and eliminate collision damage to the rover.
  • Reduce the noise generated from rover to improve audio recording quality.
  • Fix the rover mast to obtain a stable camera view.

Method

Modular Systems Design

Design different systems with multiple modules to make each system independent to the others, only reacts through the system interfaces. This will provide clearer view of each systems, and easy to test and modify a system without interrupting the others. The rover will use the following systems to perform designed functions. After all systems are completed, integral these systems together to generate the rover program. Run the rover program on the main control board will driver the rover with designed function.

Main System (Control System)

The main system of the rover to control and manage the other systems. Run this system at the beginning to initialise the rover and manage the used resources.

Sensing System (Collision Avoidance System)

A sensing system to detect obstacles and void rover collision. This system will interact with the movement system to limit the top speed and eliminate collision damage.

Controller System (Signal Receiver System)

An input system to receive control signals from a controller (signal transmitter) through a signal receiver on the rover. The will provide user interfaces during the running of rover. Users can control the rover with a main controller.

Movement System (Motor System)

An output system to perform the basic movement of the rover controlled by a controller. This system will interact with the sensing system to avoid collision and eliminate collision damage by limiting the maximum speed of driver wheels.

Height Change System (Actuator System)

An output system to control the mast of rover. This can change the camera height by extending or retracting the mast to simulate different human heights.

Recording System (Camera System)

An independent system to record educational videos using a 360 degree camera. The view of camera will be sent to a VR equipment directly and will not be interacted with the other systems.

Better Function Analysis

Since this project will work based on the preview project prototype, the new rover will keep using some designed components which have acceptable performance and functionality from the prototype. The team will analysis the functions and performance that need to be improved, and replace with better components, better structures, or better coding algorithms.

  • Use single control board rather than two, to provide faster control and update rate to reduce control delay.
  • Use single motor driver with two geared motors to improve the movement control, provide less speed up acceleration, and reduce the noise generated from the motors.
  • Use common driver wheels rather than mecanum wheels to move the rover stabler and eliminate the noise generated from the wheels.
  • Use a 1-meter linear actuator to replace the original mast to provide stable camera view and eliminate the noise generated from the mast.
  • Use a Raspberry Pi Model 3B rather than Arduino board to provide real time control and reduce the data processing lag.
  • Use C++ rather than python to develop the software part to reduce control delay and perform detailed control.

Results

Physical Design

Wheels

  • 2 × Driver wheel with radius 9 cm
  • 1 × Universal wheel (castor wheel)

Motors

  • 2 × 50:1 12V geared DC motor 6500 rpm
  • 1 × Sabertooth 2×5 dual regenerative motor driver

Base plate

  • 1 × Equilateral triangle with side length between 0.4 m and 0.8 m

Mast

  • 1 × Linear actuator 1.0 m to 1.8 m
  • 1 × H-bridge for actuator
  • 1 × Sensor Bracket for ultrasonic sensors

Wireless control

  • 1 × Flysky FS-i6 signal transmitter
  • 1 × FS-iA6B signal receiver

Board

  • 1 × Raspberry Pi 3 model B board

Sensors

  • 10 × Ultrasonic sensors - HC - SR04

Battery

  • 1 × 14.8V 4.2Ah LIPO battery

Systems Interfaces Plan

System Interface Plan.png

Systems Flowchart

Main System (Control System)

Control System Flowchart.png

Sensing System (Collision Avoidance System)

Collision Avoidance System Flowchart.png

Controller System (Signal Receiver System)

Signal Receiver System Flowchart.png

Movement System (Motor System)

Motor System Flowchart.png

Height Change System (Actuator System)

Actuator System Flowchart.png

Rover 3D Model

Rover 3D Model.png

Components Detail

Component List 1.png
Component List 2.png

Final Product

Real Rover.png

Conclusion

  • The project successfully delivered a completed rover with less control delay, less running noise, and stabler camera view. The speed change is no longer stiff, and it moves more like a human than the prototype. It has a improved collision avoidance system with less number of sensors and smoother speed limitation to avoid collision damage. The modular system design method has many advantages to develop the rover easily in the future. The developer team can add some other functions or components to the rover by creating additional systems or subsystems.
  • However, there are some aspects that the project need to improve. The project is over budget to build the rover, and the progresses are a couple of weeks later than the Gantt chart schedule.
  • There are some methods that can be added to the rover to provide better performance: use less components to build the rover cheaper, add a route finding system to provide semi-auto control, or add a auto-return system to let the rover return to the controller automatically.

References

[1] E. Hu-Au, "Virtual Reality, Education, and Constructivism Theory", Virtual Reality for Education, 2017. [Online]. Available: https://virtualrealityforeducation.com/virtual-reality-educational-possibilities-constructivist-learning/. [Accessed: 08- Apr- 2021].