Posts

Showing posts from May, 2022

How To: Tello Drone To RoboRealm - Jack Pender, Blog #8

Image
  Introduction: This blog post is a tutorial intended to give you everything you need in order to start streaming the camera feed from a Tello drone and get this stream into RoboRealm. All of the necessary files are included in this repository:  https://github.com/jackpender/TelloToRoboRealm I have detailed the steps but I suggest also taking a look at the repository as you go, especially the python file if you aren't familiar with OpenCV. Python File: ·         The first step is to import all the libraries that we will use. ·         We will be livestreaming the tello camera feed to the localhost using flask, so we now initialize this flask app. ·         We also open up the connection to the drone; me = Tello(), setting its name to “me”. ·         We then create a function called “gen_frames” to continuously grab the image that t...

OpenCV To RoboRealm - Jack Pender, Blog #7

Image
Introduction: Developing further on getting the camera feed from the Tello drone to a viewable format, it was decided to try and get the camera feed into RoboRealm. Once the camera feed is in RoboRealm, it can essentially be sent to anywhere from there, in our case Ubidots, but if this were to change we would now have a better starting point. RoboRealm: RoboRealm was created in 2006 to take advantage of lower cost generic computing, a widening range of lower cost imaging devices, an increasing need and usage of vision as a primary sensor device and the desire to come to a solution with an interactive user interface with minimal programming. This made it ideal for this project as it meant that for future iterations it would be quick and simple for someone else to get up and running with. Procedure: Using multiple of the built-in features of RoboRealm I created a programe that would start a screen capture in order to have RoboRealm capture the drone feed. Firstly, within an if ...

Healthy Head Habits - Jack Pender, Blog #6

Image
  Introduction: This blog post will hopefully be helpful to those who are dealing with stressful situations, that may be resulting from a project you are involved in, or just any scenario that is stressing you out. Project leader Jason felt this was important as learning how to cope with these stresses now is far more helpful that only starting a few years down the line in the workplace. Personal: As someone who has competed in sport for many years and done so at a National level, I have encountered my fair share of high-stress situations. Couple that with the stressful experiences everyone encounters, such as the Leaving Cert and Exam Season in college, I think I have a bit of experience dealing with these feelings. Forming Habits: A proven tool to help cope with the pressures in life is the formation of habits. However, it is understandable that when you are in the middle of a high stress situation that some of these habits go by the wayside. Even keeping one or two aro...

First USV Test - Jack Pender, Blog #5

Image
Introduction: On the 18 th of March we held our first field test at Killurin Bridge in Wexford. We met there at 10 am, with a plan of finishing up at 2 pm, giving us plenty of time to test each aspect of the project we have been working on. It was great to see the USV on the water for the first time, and it helped to visualise it in the setting that its use is intended for. Testing: The main tests for this first field test were to trial the driving functionality; Manual Drive, Microbit Drive and Cloud Drive. Using the controller, the drive of the USV was successful and it was great to finally see its speed and mobility on the water. With the Manual Drive, controlled by Patryck, going according to plan, this allowed us to test the Microbit Drive, which would be controlled by Adam. Using two Microbits to control the direction and thruster power, Adam completed a successful drive of the USV. This was great to see as it meant that the control of the USV could be friendly to everyone...

Colour Tracking With OpenCV - Jack Pender, Blog #4

Image
  Introduction: As part of this project, the Tello drone is intended to locate anyone in danger in the water and transmit this location for the USV to travel to so it can perform a rescue. Having accessed the camera feed from the Tello and displaying it where it can be monitored, the next step was to have it implement some form of tracking. For test purposes it was decided to detect the colour green. OpenCV: The colour tracking was to be implemented in OpenCV and so I simply had to edit the python file that was running the livestream. The first step of this was to import the numpy library as this would be used to calculate the area of the detected green object. This library would also allow me to set the range of colours that the Tello was to detect. It does so by creating an array of RBG values ([22,60,200] and [60,255,255] in my case) that OpenCV can use to detect these specific colours and everything that falls in between. Here I am using these values as the brightest and ...

Tello and OpenCV - Jack Pender, Blog #3

Image
  Introduction: One of the main aspects of this project is to use a drone to locate people who are in danger in the water, then transmitting this location to the USV so that it can make its way there. The first step of this was to get the camera feed from the Tello drone and stream this to a computer, in this case, mine. In order to do this my first task was to research the topic online and see if there was anything I could use. Luckily, there was. First Steps: There happened to be a few tutorials online, from articles to YouTube videos, that were able to help me get started. The first step in this process is connecting to the Wi-Fi network of the Tello drone, in order to stream its camera feed via OpenCV. This is a public Wi-Fi network, so it’s very quick and easy to connect to. Then came the python programming using OpenCV in order to actually get the camera feed from the drone. The tutorials that I found allowed this setup to be very easy. Firstly, you set up the parameter...
 Blog Entry #8 - Dylan Haley - How to implement and setup Ardupilot Required Hardware Pixhawk Raspberry Pi Router Required Software  QGroundControl Raspberry Pi Companion Computer software  Ardupilot (ArduRover/Sub/Copter etc.) Installing Companion Computer Software Insert a microSD with a minimum of 4GB into a laptop.  Download and install the Companion software image from the ardusub website        (https://www.ardusub.com/quick-start/installing-companion.html) Download and install Etcher. Open Etcher and select the image file and your SD card. Click 'Flash' The SD card is now ready to go into the raspberry Pi Installing QGroundControl Go to the ardusub website to find the download link for QGroundControl (https://www.ardusub.com/quick-start/installing-qgc.html) After it is installed open QGroundControl. Installing Ardupilot Open QGroundControl, select 'Vehicle setup' and then select 'Firmware'. Connect the pixhaw...
 Some cool videos of usv test and path planning robot test https://fb.watch/de0TT5wA4A/

End To End Connectivity - Erinn #10

Image
After deciding to no longer use XinaBox to send data from the MicroBit to the cloud, I began exploring the possible route of Beebotte, a publish/subscribe IoT platform. B eebotte is a platform that provides key building blocks to power Internet of Things (IoT) and real-time connected applications. A rich and easy to use API accelerates the development of connected applications and reduces the total cost and time to market.  To use Beebotte alongside the MicroBit, I needed DFRobot's micro:IoT expansion board. This expansion board comes with its own MakeCode extension, microIoT, which allows for easy setup and communication. Along with the MakeCode extension, the board has a n  OLED screen, p ower supply by li-ion battery or external power,  and an  Integrated Wi-Fi IoT module. MQTT The MicroIoT extension has a block specifically designed for MQTT communication, however, the dropdown menu for selecting which server you wish to send to does not display Beebotte. To fin...

OLADIPUPO JOHN SHOTADE, 20084356 #10

Image
 This week Jason the team leader asked me  to work on moving the thrusters using a green ball. Processes involved in this  Setup of serial communication between the microbit and roborealm Setup in roborealm  Setup of serial communication between the microbit and roborealm Steps involved  Connected the microbit to a pc using a usb cable  Serial communication module Steps involved Changed the port number to COM3  which is the port the microbit is communicating on Changed the baudrate to 115200  Makecode Onstart block Steps involved Placed the set radio group block from the radio extension and set it to 1 to communicate with the microbit that controls the thrusters. Placed the serial redirect to usb block from the serial extension ( which in this case will redirect the serial communication between the microbit and roborealm to usb ) under the set radio group block .  Placed the serial write line block from the serial extension and changed the va...