insect detection with photodiode or phototransistor?

Submitted by Wim_Leys on Wed, 12/25/2019 - 03:28

Hi,

I want to make an Arduino based device that detects mosquito to wasp size insects. It will be used to detect how many insects are attracted to a number of food odours / chemicals during a 24 hour period.

My first thought was to use a sensor that detects the touch of bugs moving around. Given the size of those bugs (except maybe for wasps), the sensor would have to be very very sensitive. Then I thought of using a low resolution camera. It would however require the Arduino to constantly compare a base picture to the current image to detect a bug. I don’t think an Arduino is up to that task. Currently I am thinking of using a photodiode or phototransistor. After some Googling, I think a phototransistor is the best choice as it is more sensitive than a photodiode.

What are your thoughts?

The project is a good one.
But since an insect is uncontrollable how you thinked to manage wrong counting?

Suppose three mosquitoes are detected two times, the data will show there are six mosquitoes. How you want to handle this situation?

  Joined February 12, 2018      696
Monday at 02:11 PM

The detection of a bug may also trigger "something" to capture it, but the device must be small so it can be placed in different locations. 

Counting insects is a first step. Identifying the insect is the second step. 

We don't know yet how to prevent bugs from being counted more than once. We considered capturing the bugs for determination purposes, but we wouldn't know when it was captured. Capturing them would solve the "count them only once" problem. On the other hand, the Arduino can activate a camera to take a photo of them for later determination. Taking a photo is easier than capturing and the JPEG has a timestamp in its metadata. We're pretty sure we'll see a distribution of insect species during certain periods of the day: nocturnal insects and others. 

Killing them may interfere with the measure (when hurt, some insects release warning signals for others to stay away or attract them (wasps, killer bees, …)) and we prefer not to kill them. Even if someone wouldn't care as they are "just bugs", it would limit the applicability of the device (e.g. counting honey bees, endangered insects, in protected areas like nature reserves, ...).

We would prefer to capture them, but we're unsure how we could do that at the moment. The device should not exceed the size of a bread box. Using a vacuum cleaner was an option, but that's not compact, may catch fire when left active for 24 hrs, ... Blowing them away with compressed air was another option, but the bug could still return and a pressure vessel is not compact ...

We are tackling one problem at a time. The problem now is: "How can an Arduino detect the presence of an insect?". What is the best sensor for that purpose?

  Joined December 25, 2019      2
Wednesday at 02:23 AM

The idea is very good and innovative, i think it will be more efficient, if you can use optical camera with computer vision to detect it, so that it will be more feasible for you when you will try to extend it's features.Another thing you can try is Lidar technology which may also solve your problem which uses thin laser rays.

  Joined August 22, 2019      125
Thursday at 12:29 PM

We are nearing the end of an Arduino course. To "graduate" we need to make a project. This will be our project.

Unfortunately we don't have any AI skills or the $ for a LIDAR system. How should we process the data from an optical camera or a LIDAR? Is an Arduino fit to do that? We don't know anything from a Raspberry Pi, except that it is way more powerfull than an Arduino.

It's an experimantal project. We must realise it with our own resources: our time, open source, cheap hardware, ...

 

  Joined December 25, 2019      2
Wednesday at 02:23 AM

I have done similar projects like this, but instead of using Arduino, I preferred to use Raspberry Pi 3B+, for that I adopted pre-built libraries, which commonly used for computer vision. I created a project of vehicles number plate recognition and along with this recognition; there is a record of vehicles number plates on emulator's terminal or on the server. Same thing if you want to use Arduino for this project, try to use camera like USB or Arduino camera module OV7670 and for computer vision use MATLAB tool for getting visual data and also integrate the Processing IDE along with Arduino IDE for getting better visual data. Here I would like to suggest you to get further assistance from SSLA technical team.

  Joined April 09, 2020      55
Thursday at 02:40 PM