I'm comparing several health monitor bands and their sensors in the market.
What is a Photoplethysmograph sensor, and how does it compare to the Optical Heart Rate Sensor in MS Band?
Is there an MVP for Microsoft Band yet?
the HR sensor on the band is actually a PPG sensor.
Related
I'm building a cosplay prop for a friend that uses an arudunio Uno. The UNO will be kept inside a black PVC box with little ventilation and taken to comic cons. So it's going to get hot at times. I've never really built gaming PCs or anything with batteries and I'm not sure what temperatures are ideal to run at so my guesses are just based on a google search.
My question is:
If I place a temperature sensor next to the UNO and program it to start a fan at a given temperature, What temperature would be a good choice?
I was thinking 35 degrees with an alarm going off at 70 degrees telling him to turn it off.
Also, there will be two other batteries one 3.7V Li ion phone battery that powers the chips and a small audio amp with a 18-volt (May change) drill battery powering a DC motor. Both in different locations.
For this, I was thinking I would set a larger fan to start at 30 degrees with an alarm at 55.
FYI this will be programmed on a separate ATTINY chip.
I would recommend keeping it below 125C maximum (that is the ATmega 328p's maximum temperature rating). However, I have never seen an UNO get that hot. If you are concerned though, aim for as cool as possible with a maximum temperature of about 80C
I am trying to get the dangerous value of LPG leak using MQ5 Gas sensor. But I don't know the value from serial monitor that the analog reads. Is the output of gas sensor in ppm?
You need to provide more information for people to help answer the question. You need to provide a circuit schematic, how you are interfacing it to the microcontroller etc.
However, it is unlikely you are getting a PPM reading from the sensor unless you have calibrated the sensor and developed a function to convert voltage (or resistance) to a gas concentration. First of all, you typically need to calibrate the sensor by exposing it to a known concentration of the analyte (gas) and measuring the voltage / ADC reading. Second, those types of sensors usually have non-linear response to the gas concentration, therefore developing a calibration function is difficult (and you need to characterize the sensor's response to different levels of gas concentration to develop an algorithm). There are many ways to do this, but that can be an expensive and time consuming process. What compounds the problem is that different sensors typically exhibit different responses to the same gas concentrations between batches or even two sensors from the same batch. The sensors are also sensitive to temperature, relative humidity and other contaminants which can skew the readings. These sensors can be useful for generally detecting the presence of the analyte (gas), but typically aren't very useful or accurate when estimating PPM within a reasonable error margin. There are also many variables to control with that sensor such as the heater voltage, heating pulse duration, load resistance, etc. These sensors have MANY cross sensitivities and responses to other analytes (other than LPG).
If you have implemented the sensor as per the manufacturer's data sheet and have converted the resistance into a usable voltage and are reading the values from an ADC, you may be able to interpret the ADC readings as general indication of the presence of the gas (but maybe not.. you could be measuring humidity fluctuations), in any case you would likely need to calibrate the sensor and develop an algorithm to estimate the PPM.
It appears from looking at a couple websites that this sensor returns the value of Rs (sensing resistance).
Looks like you will have to calculate a ratio of Rs/Ro (Ro being the resistance of "clean" air) for which you would derive the ppm from the MQ5 datasheet graph.
I'm using a SIM808 GSM+GPS module on a LoNet breakout board: http://www.seeedstudio.com/wiki/LoNet_-_GSM/GPRS/GPS_Breakout with an Adafruit Trinket Pro 3V, and everything works.
I've taken care to build in power save modes in my application. I can enable the SIM808 slow clock, so it can sleep with DTR=1, which I call "light sleep" mode. Also there is a "deep sleep" mode, where I set AT+CFUN=0 to further decrease functionality of the SIM808, and power usage. (During deep sleep the RF circuits are off, so no SMS reception..)
I've measured power consumption by measuring the voltage across a 1 ohm resistor in series with the battery.
During normal GSM operation 19-20 mA is used; with slow clock enabled also 19-20 mA, in deep sleep 18-19 mA.
Switching on GPS makes the board use 43-44 mA. I see no difference while acquiring the GPS fix, or when a fix is reached. The wiki page (above) says that continuous tracking takes 24 mA, but apparently that is on top of the 20 mA when just the GSM is used. Indeed 20+24 is 44 mA, the value I measure.
I'm quite disappointed that the sleep conditions don't seem to save any power!
Should I do things like remove the green power LED? The design drawing shows a 470 ohm R in series, so that could save ca 8 mA?
The board does have a battery charging circuit; could that be responsible for the 20 mA base current? When I power down the SIM808 only ca 0.02 mA is used, so I wonder if there is an external circuit responsible for the 20 mA base current. The SIM808 Hardware Docs spec a power consumption of around 1 mA only! - I wish!
I had the same problem like you but on another board.
As you can see at the top of the board below the right one of the two SMA connectors it says: "Active GPS Antenna". And thats the solution to the problem.
When I disconnected the GPS antenna the current dropped to ~670µA without LEDs and when slowclock (AT+CSCLK=1) was enabled, AT+CFUN=0 and DTR pin was high (eg. 3.3V).
So if you want to really make your SIM808 module low power you have to switch the active GPS antenna off with a PMOS.
This image shows the active GPS antenna circuit of my SIM808 Module.
EDIT:
Damn I don't know how to delete or edit a comment... And I can't post more than 2 links, please go to the next links by yourself:
This wiki page (wiki.seeedstudio.com/wiki/LoNet_-_GSM/GPRS/GPS_Breakout) of the LoNet states that: "GPS Antenna: this is an uFL GPS antenna connector. You can connect either passive or active GPS antenna to it. Active GPS antenna runs at 2.8V voltage."
And the schematic (wiki.seeedstudio.com/images/3/37/LoNet_808_Schematic.pdf) shows in the top right corner, that the GPS connector is prepared for an active antenna (the inductor in series with the current limiting resistor).
So if you don't have an active antenna you maybe can just cut the trace between the inductor and the GPS connector.
I don't know what will happen when you are using a passive antenna, you have to try it yourself.
Good luck!
I am experimenting two low energy bluetooth 4. I am getting uuid, tx power level and rss values on the android app that I downloaded.
I noticed that one of these two is sending 0 for tx power level, but the other one is sending 4 for tx power level and see different RSSI values on the android app even though I put them in the same spot. It means that the distance is same between my android phone and these two bluetooth devices. If the difference is +/- 5, I understand, but the difference is +/- 15. Is is because of the tx power level?
And oo I need to take tx power level into consideration to calculate the proximity between the BLE 4 and my android app?
You cannot directly relate RSSI and absolute distance between BLE central and peripheral. Of course RSSI is affected by, but not only, distance. However there are other significant factors such as interference, transmittion medium, etc. If your two BLE peripherals are two different models, the values may even vary more.
RSSI fluctuating for around +-15 is very normal for BLE connections, and nearly impossible to eliminate in practical cases. So basically you cannot only rely on RSSI for calculating distance if you want the error to be less than several meters.
I am currently using analog pin 3 on my Arduino Uno to send out voltage from 0 to 5V.
I am using that voltage to control the motor and currently I am using the function:
analogWrite(pin, PWM_PULSE);
I am using 255 pwm for 5V and 127 for 2.5V.
The problem is that PWM is sending full cycle at 255pwm(5V), but on 127V the cycle is at 50% which causes my motor to twitch a little bit.
How can I solve this? I am searching for a way to send full PWM cycle even at lower volts. Is it possible?
First I believe you mean D3 not A3, since PWM does not exist on A3.
Assuming you are driving a DC motor, and not something like a servo or stepper
You have two problems.
1st. you may need a smoothing capacitor. Where your formula would be F=L*C Noting that analogWrite uses a F=490Hz. The concept is simple, in short the cap average out the high and lows of the PWM, based on the duty cycle. And the capacitance needed is based on the frequency and impedance. This will provide the analog voltage.
2nd. And bigger problem is the output of the Arduino can not supply sufficient current to drive the motor correctly. It will max out at about 20ma, and the motor likely needs more. So at low speeds the pulses which were week, stall out during their low periods.
You should have your PWM output drive a transistor, which in turn will ON-OFF the motor directly from the power supply. Now your motor may have enough inertia as not to need the cap.
see adafruit-arduino-lesson-13-dc-motors/breadboard-layout
and here for a discussion about the smoothing cap