- Silicon Labs Community
- Welcome and Announcements
- Silicon Labs Knowledge Base
- 8-bit MCU
- 32-bit MCU
- Bluetooth / Wi-Fi
- Other Products Category
- Optical/RH/Temp Sensor
- Other Products
- Hardware and Software Tools
- Simplicity Studio and Software
- General Discussions and Suggestions
- Chinese Forum
- Software Libraries
- Development Kits
- Reference Designs
- Third Party Tools
- White Papers
- Official Blog of Silicon Labs
- Chinese Blog
04-06-2017 10:12 AM
We are using SI1141 in one of our products successfully since a few years. In this product the sensor is used to detect hands above the sink. The sink is here at about 30 cm from the sensor and the "optical geometry" is such that the sensor only "sees" objects up to about 25 cm (see graphic below). So on the bottom line, the sink surface is outside the detection zone in this product.
Now we would like to reuse the module with the SI1141 in it in another product (ideally without changing the "optical geometry"). I the new product the sink surface is only about 20cm from the sensor and thus inside the detection zone. Due to this the signal of the sensor is influenced by the surface properties of the sink. Practically that means, that the sensor outputs a highly different signal, depending on wether a film of water is present on that surface or not.
As it is rather "difficult" to change the optical geometry: Do you have an idea how we could solve this problem with a software/algorithm/sensor configuration approach? Or maybe by changing the type of sensor (ideally similar size, pinout, ..)? - Any input is welcome.
- Sketch of current optic arrangement
- Graph with signal in current system
- Graph of signal in planned new system
04-06-2017 10:39 AM
You can reduce the detection distance simply by reducing the LED current or PS_ADC_GAIN setting. What's the LED current and PS_ADC_GAIN setting used in your system?
04-11-2017 06:38 AM
Thank you for your input.
Currently we use PS_ADC_GAIN = 0x01 (divide by 2) and REG_PS_LED21 = 0x0F (max current on led1)
I did quickly try different settings (PS_ADC_GAIN = 0x00 and REG_PS_LED21 = 0x07) but "only" with the result that I already expected. The ADC value/signal is lower in this case (around the 350 as in our current system).
BUT: The qualitative behaviour of the signal is the same:
- The sink (geometrically of course still in the detection zone) reflects significant IR resulting in e.g. the value of 350.
- If a hand is present slightly above the sink (rather far away from the sensor), the signal drops e.g. to about 250, because (this is a theory) the and reflects less than the sink surface.
- If a hand is present "a lot" above the sink (rather close to sensor), the signal increases e.g. to about 450, because (this is a theory) even though the and reflects less than the sink surface, the effective reflection is higher, because the hand is closer to the emitter and to the sensor.
With the original gain/led current settings the behaviour is the same, but at a higher adc-value level.
Do you have other ideas?