Skip navigation

Forget Me Not Design Challenge

15 Posts authored by: amgalbu Top Member
In this post, I finally put my hands on the RpiSOC board to make some experiments with servos, in particular with easing functions. My purpose is to control servos speed and acceleration by sending high-level command (i.e. move to 120 degrees position) from the Raspberry PI board and let the RpiSOC generate the PWM to make the movement as smooth as possible. I like C/C++ language like no other programming language, so I'm not going to use the provided Python interfaces but I will use PSOC Creato ...
In this post, I will face a difficult challenge: detect whether a plant is flourishing or not. At this moment in time, this feature requires some more experiments and works to make a reliable solution, but I think the solution is promising NDVI Vegetation is green because plant leaves reflect green light -- they don't use much of it for photosynthesis (see Figure 1).   Instead they use lots of the blue and red wavelengths in sunlight. The pigments in leaves absorb this light to power phot ...
In this post I will explain how the Cam-e-lot sensor sends the level of light in the room to the OpenHAB system. There two steps involved: calculate the level and light from the image captured by the RaspiCam and send the value to OpenHAB by means of the enOcean transceiver.   Determine level of light in the room Thanks to the OpenCV library, this task can be accomplished quite easily. The key of the problem is to use the proper color space. The RaspiCam saves images using the widely-used R ...
...
  T h last step to complete the binding is to implement the new enOcean profile on the Raspberry Pi board.   I already build the EOLink library in round n.2. Now I'm going to add a new profile and making some changes the eoGateway class in order to handle incoming commands       Commands format   The enOcean profile D2-01 has variable length telegrams (D2 identifies telegrams as VLD -variable length data- telegrams).   To set an actuator status, the radio ...
We are now ready to test the new profile. When running the OpenHAB runtime from Eclipse IDE, the configuration files needs to be located in the folder   c:\Documents and Settings\Administrator\OpenHAB\distribution\openhabhome\configurations   First of all, change the openhab_default.cfg file to set the COM port for the enOcean binding   ################################# EnOcean Binding ##################################### # # EnOcean USB adapter serial port #enocean:serialPort=C ...
After installing everything we need to develop a binding for a new enOcean profile into OpenHAB, let's start to implement such a new profile OpenHAB binding OpenHAB has an architecture based on a bus where the OpenHAB runtime components write messages and receive notifications. Bindings are one of those components specifically designed to communicate with a external devices using a certain protocol. Here is an overview of the OpenHAB architecture    There is a tutorial here that ...
This post probably starts the most interesting part of the project: interfacing the sensor with OpenHAB through enOcean radio protocol   Hardware setup The hardware setup is shown in picture below     The PC runs OpenHAB and sends command to the enOcean transceiver to the Raspberry Pi board using the USB300 USB dongle. The Raspberry Pi board, in turn, sends notifications to the OpenHAB.   Software setup Software setup is not so easy. Our sensor requires the use of ...
In this post I will talk a little about GPIOs. There are a lot of libraries that make using of GPIOs really easy. I decided to use the PIGPIO library, available here   http://abyz.co.uk/rpi/pigpio   The PIGPIO has a lot of features sampling and time-stamping of gpios 0-31 between 100,000 and 1,000,000 times per second provision of PWM on any number of the user gpios simultaneously: this is a great features because you don't need to use an hardware PWM pin, making the hardware des ...
In this post we will see how the blob detection feature I implemented in one my previous posts can be useful to implement the features I'd like to achieve, namely flames detection   A flame is not an efficient means to light your house: it emits most of its energy in the infrared spectrum, that is to say it emits light with such a long wavelength that human eye can not see it. So, to detect a flame the easiest way is to look for a source of infrared radiation. Normal cameras have a built- ...
amgalbu

Cam-e-lot - Video

Posted by amgalbu Top Member Sep 5, 2014
Hello everybody I promised a video demonstrating the use of the blobs library, and finally here it is!! ...
In this post we will face some image processing technique, like blob analysys. I will use the cvBlob library to detect blobs in the image capture by the raspicam   So, let's start.   Step1: cvBlob installation 1.       Download cvBlob library from this link                https://github.com/Steelskin/cvblob             &# ...
Hello everybody For my project I need to make some analysis on the images captured by RaspiCam, so the next step is to install the OpenCV libraries and try to get images from RaspiCam inside a C program. So here are the steps for this round (this tutorial has been adapted from the tutorial published by Pierre on Think RPI | Creative Raspberry Pi Area)   1. Install RaspiCam. Installation procedure is very well described on Raspberry official site http://www.raspberrypi.org/archives/3890 ...
Next step in the ForgetMeNot project is to make the EnOcean PI board work. As I said, my purpose is to write a C++ application, so I need the be able to cross-compile the source code to control the EnOcean Pi board and embed it into my application. Fortunately, EnOcean provides a valid library to use as a starting point   So, these are the steps for this round I downloaded the EnOcean link library from http://www.element14.com/community/servlet/JiveServlet/download/55295-6-118009/EnOcean ...
Hi everybody This is the first round of my ForgetMeNot challenge Because my purpose is to write a C++ application for Raspberry that uses EnOcean Pi board, the first round I'm facing is againt cross compilation   These are the steps I followed I created a new virtual machine with Ubuntu Linux 12.04 I followed the steps I found in this very useful tutorial:  Development Environment for the Raspberry Pi using a Cross Compiling Toolchain and Eclipse | Hertaville . The tutorial is abs ...