I built a simple system at home with a sonar sensor and an IR sensor. The system constantly runs and check for movement in the area. If movement is detected, the sonar sensor estimate distance to a closest target and IR sensor takes IR readings. If IR readings from all four sensors are higher than a threshold "EBT" is reported. The system also runs and post data to the web-page when no motion is detected or when only motion is detected (no EBT). 

Once sonar sensor detects a target at a distance of 16 inches or further the IR sensor takes infrared readings.  If IR readings are above the set threshold EBT is reported. The unit streams data over UART-USB converter and also sends data to the web application.

Infrared thermometers in general are characterised by accuracy and angular coverage. The distance-to-spot ratio (D:S) is the ratio of the distance to the measurement surface and the diameter of the temperature measurement area. This ratio determines accuracy of temperature measurements. The firther the distance to the measured object the less accurate is the temperature reading. For example, a 12:1 rated device can sense a 1-inch circle at a distance of one foot. If the distance is greater than 12 inches temperature reading will be inaccurate. The ideal target area should be at least twice the size of the spot at that distance. That is why my system constantly measures the distance and when target is at a specified range the unit takes temperature readings.

Testing the system. I held a hot cup of water in my hand before running this test. When I place my hand in front of the IR sensor the IR readings are above the set threshold at the set distance and "sick person" image appears on the web page.

I took a few IR readings from myself to get a baseline IR. The distance was approximately 16 inches from the IR sensor (not very far). Using these readings as a reference the system tries to determine if one has an elevated body temperature.

The project is based on the CC3200 board. Once information is collected it gets reported to my web application: 

http://cnktechlabs.com/webapp_pub/grid.php. To view my data enter ID: 95378810207688.

In the image above "EBT" stands for an elevated body temperature. 

For the project I have selected MB1212 Maxbotix sonar sensor and an AK9753 Human Presence Sensor Breakout board. This project is based on my "Monitor Data and Remote Control from a WebApp" project:


The unique ID number is printed to a serial terminal as a Hex value when system is running.

This number can be a MAC default assigned by TI or manually assigned. To manually set the new MAC address (or ID) enter unique values as shown below. After the board is programmed you will need to press and hold SW3 and push the Reset button while pressing SW3. After a 10 - 15 seconds you should see " MAC address is set to: XX:XX:XX:XX:XX:XX" printen on a serial terminal:

//SET MAC address
GPIO_IF_GetPortNPin(SH_GPIO_13,&uiGPIOPort,&pucGPIOPin);//If SW3 button is pressed set MAC address
ucPinValue = GPIO_IF_Get(SH_GPIO_13,uiGPIOPort,pucGPIOPin);
if (ucPinValue == 1){
    _u8 MAC_Address[6];
    MAC_Address[0] = 0x8;
    MAC_Address[1] = 0x0;
    MAC_Address[2] = 0x28;
    MAC_Address[3] = 0x22;
    MAC_Address[4] = 0x69;
    MAC_Address[5] = 0x31;
    sl_NetCfgSet(SL_MAC_ADDRESS_SET,1,SL_MAC_ADDR_LEN,(_u8 *)MAC_Address);
    UART_PRINT("\n MAC address is set to: %02x:%02x:%02x:%02x:%02x:%02x \n",

Technical information on the sensors used in the project

Sensor Minimum Distance
For the MB1202 and MB1212 the sensor minimum reported distance is 25-cm. However, the I2CXL-MaxSonar-EZ will range and report targets to the front sensor face. Large targets closer than 25-cm will typically range as 25-cm.