Difference between revisions of "Projects:2021s1-13413 360˚ Camera Dolly/Rig"
(Created page with "Category:Projects Category:Final Year Projects 13413 == Introduction == Virtual Reality (VR) is increasingly prevalent technology that is seeing us...") |
|||
(One intermediate revision by the same user not shown) | |||
Line 3: | Line 3: | ||
[[Category:2021s1|13413]] | [[Category:2021s1|13413]] | ||
== Introduction == | == 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 | + | 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. |
− | 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 team === | ||
==== Project students ==== | ==== Project students ==== | ||
Line 12: | Line 12: | ||
* Said Al-Sarawi | * Said Al-Sarawi | ||
* Hong Gunn Chew | * 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 == | == 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 == | == 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 === | ||
+ | [[File:System Interface Plan.png|thumb]] | ||
+ | |||
+ | === Systems Flowchart === | ||
+ | ==== Main System (Control System) ==== | ||
+ | [[File:Control System Flowchart.png|thumb]] | ||
+ | ==== Sensing System (Collision Avoidance System) ==== | ||
+ | [[File:Collision Avoidance System Flowchart.png|thumb]] | ||
+ | ==== Controller System (Signal Receiver System) ==== | ||
+ | [[File:Signal Receiver System Flowchart.png|thumb]] | ||
+ | ==== Movement System (Motor System) ==== | ||
+ | [[File:Motor System Flowchart.png|thumb]] | ||
+ | ==== Height Change System (Actuator System) ==== | ||
+ | [[File:Actuator System Flowchart.png|thumb]] | ||
+ | |||
+ | === Rover 3D Model === | ||
+ | [[File:Rover 3D Model.png|thumb]] | ||
+ | |||
+ | === Components Detail === | ||
+ | [[File:Component List 1.png|thumb]] | ||
+ | [[File:Component List 2.png|thumb]] | ||
+ | |||
+ | === Final Product === | ||
+ | [[File:Real Rover.png|thumb]] | ||
== Conclusion == | == 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 == | == References == | ||
− | [1] | + | [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]. |
− | |||
− | [ |
Latest revision as of 20:20, 24 October 2021
Contents
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
Systems Flowchart
Main System (Control System)
Sensing System (Collision Avoidance System)
Controller System (Signal Receiver System)
Movement System (Motor System)
Height Change System (Actuator System)
Rover 3D Model
Components Detail
Final Product
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].