void loop()
{
 //loop variables
  
  if(sensorUpdateReady())
  {
   sensorVal=GetSensorData();
   refreshSensorArray(sensorVal);
   lowestSensorVal=getLowestSensorVal(sensorVal);
   sendVal= map(lowestSensorVal, SENSOR_MIN, SENSOR_MAX, 0, 255); 
   rangedSensorVal = map(sensorVal, SENSOR_MIN, SENSOR_MAX, STROBE_MIN, STROBE_MAX);
   strobeInterval= rangedSensorVal;
   //printSensorData (rangedSensorVal);
   Serial.println("");
   sendSensorData (sensorVal);    
  }
  
  if (lowestSensorVal < threshold)
  {
    digitalWrite(relayPin, HIGH);
    Serial.print('H');
  }
  
  if (lowestSensorVal > threshold)
  {
    digitalWrite(relayPin, LOW);
    Serial.print('L');
  }
  
  delay(loopDelay);
}
void loop()
{
 //loop variables
  
   sensorVal=GetSensorData();
   refreshSensorArray(sensorVal);
   lowestSensorVal=getLowestSensorVal(sensorVal);
   sendVal= map(lowestSensorVal, SENSOR_MIN, SENSOR_MAX, 0, 255);
   rangedSensorVal = map(sendVal, SENSOR_MIN, SENSOR_MAX, STROBE_MIN, STROBE_MAX);
   strobeInterval= rangedSensorVal;
    //printSensorData (rangedSensorVal);
   Serial.println("");
   sendSensorData (sensorVal);

  if (strobeUpdateReady())
  {
    digitalWrite(relayPin, strobeVal);
  }
  //delay(loopDelay);
  //printSensorData(1);
}
void loop()
{
 //loop variables
  
  if(sensorUpdateReady())
  {
   sensorVal=GetSensorData();
   refreshSensorArray(sensorVal);
   lowestSensorVal=getLowestSensorVal(sensorVal);
   //sendVal= map(lowestSensorVal, SENSOR_MIN, SENSOR_MAX, 0, 255); 
   rangedSensorVal = map(sensorVal, SENSOR_MIN, SENSOR_MAX, STROBE_MIN, STROBE_MAX);
   strobeInterval= rangedSensorVal;
    //printSensorData (rangedSensorVal);
   Serial.println("");
   sendSensorData (lowestSensorVal);    
  }
  
  if (strobeUpdateReady() && lowestSensorVal < threshold)
  {
    digitalWrite(relayPin, strobeVal);
    Serial.print('H');
  }else{
  {
    //digitalWrite(relayPin, LOW);
    Serial.print('L');
  }
  
  //delay(150);
  
    //if (strobeVal == HIGH)
    //{
      //offcounter++;
      //if (offcounter > 100)
      //{
      //digitalWrite(relayPin, LOW);
      //offcounter = 0;
      //}
    //}
  }
}
Esempio n. 4
0
SaErrorT
cIpmiSensorHotswap::GetPicmgState( tIpmiFruState &state )
{
  // read hotswap state
  cIpmiMsg rsp;

  // Default value just in case
  state = eIpmiFruStateCommunicationLost;

  SaErrorT rv = GetSensorData( rsp );

  if ( rv != SA_OK )
     {
       stdlog << "cannot get hotswap state !\n";
       return rv;
     }

  // Reading should be 0 according to PICMG 3.0 specification
  // However if it's not this is not a fatal error so just flag it
  if ( rsp.m_data[1] != 0 )
     {
       stdlog << "WARNING: hotswap sensor reading not 0 : " << rsp.m_data[1] << " !\n";
     }

  unsigned int value = rsp.m_data[3];

  for( int i = 0; i < 8; i++ )
       if ( value & ( 1 << i ) )
          {
            state = (tIpmiFruState)i;
            return SA_OK;
          }

  stdlog << "WRONG Hot Swap State " << value << "\n";

  return SA_ERR_HPI_INVALID_DATA;
}
Esempio n. 5
0
VOID Yeelink_Run(VOID *arg)
{
   int ret;
   char *buffer = NULL;

   while(1){
	   if(TCPClient_reset_flag == 1)
	   {  
 	       //得到各个传感器数值
	   	   GetSensorData();

	       //粉尘浓度    376377
		   buffer = yeelink_post(AirTest_ID,Dust_ID,sensordata.Dust);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));

	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"Dust=>Send failed(ret:%d).\n", ret);
	       } else {
		      TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"Dust=>Send success.\n");
	       }	
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(100);


		   //室内温度    376378
		   buffer = yeelink_post(AirTest_ID,Temp_ID,sensordata.Temperature);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));
	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"Temperature=>Send data failed(ret:%d).\n", ret);
	       } else {
		   	  TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"Temperature=>Send data success.\n");
	       }		
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(10);
		   OSTimeDly(100);	
	  
		  //甲醛浓度    376382
		   buffer = yeelink_post(AirTest_ID,Methanal_ID,sensordata.Methanal);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));
	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"Methanal=>Send data failed(ret:%d).\n", ret);
	       } else {	
		   	  TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"Methanal=>Send data success.\n");
	       }		
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(100);

		  //室内湿度    376383
		   buffer = yeelink_post(AirTest_ID,Humidity_ID,(int)sensordata.Humidity);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));
	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"Humidity=>Send data failed(ret:%d).\n", ret);
	       } else {
			  TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"Humidity=>Send data success.\n");
	       }		
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(100);

		  //空气质量指数 376376
		   buffer = yeelink_post(AirTest_ID,AQI_ID,sensordata.AQI);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));
	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"AQI=>Send data failed(ret:%d).\n", ret);
	       } else {
		      TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"AQI=>Send data success.\n");
	       }		
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(100);
	   }
  	   OSTimeDly(100); 	   
   }
}