DEVELOPMENT OF AN EMBEDDED SYSTEM FOR TARGETING A COLOR OBJECT USING A VIDEO CAMERA INTEGRATED TO A MICROCONTROLLER
This project uses STM32F103 microcontroller to track an object, it gets the image from an OV7725 camera + FIFO, it is configured as rgb565 QVGA(320×240).
In the touchscreen the target object can be selected, its color defines the thereshold to binarize an image. After the segmentation is done an algorithm recognizes the contour of the image and its center, once located a PI controller moves 2 servos (pan, tilt) in order to target the objective.
A video of the system doing real-time tracking can be seen in the bottom of the post. The source code and Keil project for the STM32F103VCT device can be downloaded here: Image_Processing.zip
Designing an embedded system in a microprocessor for detection and targeting a colored object, without the need for externally processing system (PC)
It has been quite a while ago since my last post here at the Blog which is due to a lot of new things and changes that happened in the past year. So with the following post I would like to tell a bit about myself and why I haven’t been writing post so frequently.“Who am I?”
Most of you probably don’t know a lot about either me or Kristian, but I thought it would be the right time now to give a better introduction about me and myself. I have mainly been keeping these details about myself private, due to my age and the difficulty in freelance work and consultancy when being a newly started company and now with an age of only 20 years.
“My name is Thomas Kølbæk Jespersen. I’m 20 years old and a keen electronics enthusiast, entrepreneur, R&D ‘engineer’ and now being a student at Aalborg University studying Electronics Engineering.”
A lot of things happened for me and my company TKJ Electronics in the past year, which are but not limited to:
- Gap year
- Sales manager for solar panels
- Balanduino project
- Travel adventure
- Moving to Aalborg
- Aalborg University
- Employment at Create It Real
- General TKJ Electronics consultancy
Categories: Balanduino, TKJ Electronics aau, australia, china, create it real, fpvmanuals, gap year, Huaqiangbei, knop elektronik, seeedstudio, shenzhen, sunlight, university
I am very pleased to announce that I have now added support for the PS4 controller via Bluetooth. This will allow you to read all the buttons and joysticks with the same API as all the other libraries I have written for the USB Host library.
To get started you should look at the provided example. It shows how to read the different buttons and joysticks.
I still haven’t figured out how to control the light, rumble and read the accelerometer, gyroscope and touchpad, but hopefully I will figure that out soon.
I am glad to announce that Bluetooth HID devices are now supported by the USB Host library. The library already supports PS3 and Wiimote controllers, but now it also supports more general devices, like Bluetooth keyboard and mice.
An example is available at the following link: https://github.com/felis/USB_Host_Shield_2.0/blob/master/examples/Bluetooth/BTHID/BTHID.ino.
First time you run the code, you will have to pair with your device, this is done by creating the instance like so:
BTHID bthid(&Btd, PAIR, "0000");
You can of course set the pin to anything you like.
Now you should enable discovery of your device and it should automatically detect any mouse or keyboard present and then connect to them. On Bluetooth mice there is no need to enter any pin, but on a keyboard you should enter the pin on the keyboard and then afterwards press enter.
So in this example you should press 0 four times on the keyboard and then press enter afterwards.
After you have paired with the device, you can simply create the instance like so:
When you press any button on your device it will automatically connect to the last paired device i.e. your Arduino.
I have finally finished my last exams, so now I have more time to focus on some of my own projects. It has been a while since our Kickstarter campaign was successfully funded, but we are still working on making the experience better for the final users.
After the campaign ended we sent out a survey to all our backers with several questions about there address, profession and so on, but we also asked them if they had any suggestions for improvements or extra features they would like to see added to the Balanduino. A lot of people asked if we could enable wireless streaming for it.
I was personally very excited about that since I have been playing with the thought for quite a while, so when the official camera module for the Raspberry Pi became available I bought it straight away.
We are very pleased to announce that our Kickstarter for the Balanduino balancing robot has successfully been funded by $13,494 which we are very happy about.
We have just received stickers from our printing company and have decided to give a little bonus in form of a signed Balanduino post card. We will be shipping this post card and stickers to all of our backers who have pledged $10 or more, within next week.
All the source code including the firmware, schematic, PCB layout and mechanical drawings for the frame is available at Github: https://github.com/TKJElectronics/Balanduino.
If you are not a backer, but are still interested in the project, you should checkout the Kicstarter: http://www.kickstarter.com/projects/tkjelectronics/balanduino-balancing-robot-kit and our previous blog post: http://blog.tkjelectronics.dk/2013/03/balanduino-balancing-robot-kit/.
That’s all for now. Please let us know in the comments below if you got any questions or comments regarding the project.
Hello to all of our followers. This is just a short reminder that the Kickstarter of our Balancing robot, the Balanduino, is nearly finished.
We have already reached our goal of $10.000, but of course it would be great to get even more backers and pledges.
In the meanwhile we have recorded a new video of the robot with a GoPro mounted on the top.
For more information check out the prevouis blog post: http://blog.tkjelectronics.dk/2013/03/balanduino-balancing-robot-kit/ and the Kickstarter page.
Hello all fellow blog readers.
Most of you might be aware of the Balancing robot project we have been working on for quite a while, if not please have a look here: The Balancing Robot.
We have now been working on this project in over a year, fine tuning the balance and stability of the robot and adding even other features and control options.
And NOW we are ready to announce this Balancing robot to be sold as a kit, named Balanduino.
The Balanduino kit consists of an Arduino compatible main board with the necessary sensors to keep the robot balanced automatically.
Furthermore the main board contains a USB Host controller, the MAX3421E, which library for the Arduino we have been expanding a lot recently, adding support for many of the most popular game controllers.
This USB Host controller together with a USB Bluetooth dongle enabled you to remotely control the Balanduino with your Android phone, PS3, Wii or Xbox controller and even your Windows, Linux or Mac PC.
We have just recently bought a one of the latest evaluation kits from Hitex, featuring the new dual-core LPC4350 from NXP – the LPC4350 Evaluation Board.
LPC4350 Getting Started Kit
The processor consists of two cores, an ARM Cortex-M0, as the low-level processor and the high-end ARM Cortex-M4. Even though the two cores are of a different kind and with independently different features, they both run at a frequency of up to a stunning 204MHz.
FPGA’s can be very advanced to get started using, especially if you are used to microcontrollers.
But when you first get the right feeling and the proper mindset you will soon see the endless possibilities with the programmable logic.
One of the great aspects of the logic is the speed and the full control of what happens at every single clock cycle.
With this full control it doesn’t takes many lines of code to generate a very time-critical signal such as a video signal.
In this short post I will walk thru our current test setup with an FPGA, the Spartan 3E, controlling a 18-bit 7″ 800×480 TFT display.
Spartan 3E controlling a 800×480 TFT LCD