Difference between revisions of "Component: Analogue Temp Sensors (Environmental)"

From Flowcode Help
Jump to navigationJump to search
 
(7 intermediate revisions by 2 users not shown)
Line 33: Line 33:
  
  
''No detailed description exists yet for this component''
 
  
==Examples==
 
  
  
  
 +
''No detailed description exists yet for this component''
  
 +
==Examples==
  
  
Line 47: Line 47:
  
  
''<span style="color:red;">No additional examples</span>''
 
  
==Macro reference==
 
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''VoltageADC'''
 
|-
 
| colspan="2" | Calculates what the approximate voltage should be based on Vref, Scale factor, Offset. For TSIC301, based on Max temp and Min temp only. &nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempIntCX10'''
 
|-
 
| colspan="2" | Value of integer temperature in deg C x10  E.g 22.5C will give the result of 225 This allows more contol if using integers to save memory 9999 = temperature outside of sensor range &nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempIntFX10'''
 
|-
 
| colspan="2" | Value of integer temperature in deg F x10  E.g 62.5F will give the result of 625 This allows more contol if using integers to save memory 9999 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''IntValueADC'''
 
|-
 
| colspan="2" | The Integer ADC value of the sensor output volttage &nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempStringF'''
 
|-
 
| colspan="2" | String value of integer temperature in degF to one decimal place. E.g 70.2 999,9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempFloatF'''
 
|-
 
| colspan="2" | Value of the temperature in deg F 999,9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
 +
Example Program showing how to show the temperature in Celsius and Fahrenheit and expected ADC pin voltage on an LCD.
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
+
{{Fcfile|Analogue_Sensors_Example.fcfx|Analogue Sensors Example}}
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempStringC'''
 
|-
 
| colspan="2" | String value of integer temperature in deg C to one decimal place. E.g 22.5 999,9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
 +
==Macro reference==
  
 +
===GetTempFloatC===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
Line 155: Line 80:
  
  
 
+
===GetTempFloatF===
 
 
==Property reference==
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Select Sensor
 
|-
 
| colspan="2" | Select the required sensor. Custom allows you to enter parameters of an analogue sensor not covered.&nbsp;
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | ADC Properties
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-6-icon.png]]
 
| width="90%" | Channel
 
|-
 
| colspan="2" | Analogue Input Channel - Which pin is the analogue input connected to?&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Vref (mV)
 
|-
 
| colspan="2" | For a more accurate reading, enter the exact referance voltage.  &nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | VRef option
 
|-
 
| colspan="2" | Defines what is used as the ADC maximum reference. ADC Range = GND to VRef Voltage VDD - Defines the microcontrollers power supply pin as the max reference, VREF+ Pin - Dedicated pin on the microcontroller to allow for a variable reference voltage.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Conversion speed
 
|-
 
| colspan="2" | Clock setting to select how fast the ADC peripheral will perform an ADC conversion. The FRC setting is based on a RC time base and so will vary with temperature and pressure. Other settings are generally based on divisions of the master clock.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Acquisition cycles
 
|-
 
| colspan="2" | Number of micro seconds to wait for the ADC input to charge before starting the analogue sample.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Total average samples
 
|-
 
| colspan="2" | The number of ADC samples taken. The higher the number the more stable the reading. &nbsp;
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Sensor Characteristics
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Temp compensation x10
 
|-
 
| colspan="2" | Set value to compensate for sensor and other vairations. E.g. -10 = Set the temperature 1 degrees lower 5 =  Set the temperature 0.5 degrees higher&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Scale factor (mV x100)
 
|-
 
| colspan="2" | for a scale factor of 22mv/C or 22mV/F it's 2200. Scale factor is set for you automatically. It can only be adjusted when custom is selcted.  &nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Offset (mV)
 
|-
 
| colspan="2" | Offset is set for you automatically. It can only be adjusted when custom is selcted.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Max Temp
 
|-
 
| colspan="2" | Max Temp the sensor can reach is set for you automatically. It can only be adjusted when custom is selcted.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Min Temp
 
|-
 
| colspan="2" | Max Temp the sensor can reach is set for you automatically. It can only be adjusted when custom is selcted.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Centigrade
 
|-
 
| colspan="2" | 0 for a fahrenheit sensor. 1 for a centigrade sensor. Can only be changed when custom is selected.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Kelvin
 
|-
 
| colspan="2" | 1 for a kelvin sensor. Can only be changed when custom is selected.&nbsp;
 
|}==Macro reference==
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''VoltageADC'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempFloatF'''
 
|-
 
|-
| colspan="2" | Calculates what the approximate voltage should be based on Vref, Scale factor, Offset. For TSIC301, based on Max temp and Min temp only. &nbsp;
+
| colspan="2" | Value of the temperature in deg F 999,9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
|-
 
|-
Line 257: Line 94:
  
  
 +
===GetTempIntCX10===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
Line 270: Line 108:
  
  
 +
===GetTempIntFX10===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
Line 283: Line 122:
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
+
===GetTempStringC===
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''IntValueADC'''
 
|-
 
| colspan="2" | The Integer ADC value of the sensor output volttage &nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempStringF'''
 
|-
 
| colspan="2" | String value of integer temperature in degF to one decimal place. E.g 70.2 999,9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempFloatF'''
 
|-
 
| colspan="2" | Value of the temperature in deg F 999,9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
Line 335: Line 136:
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
+
===GetTempStringF===
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempFloatC'''
 
|-
 
| colspan="2" | Value of the temperature in deg C 999.9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
 
 
 
 
==Property reference==
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Select Sensor
 
|-
 
| colspan="2" | Select the required sensor. Custom allows you to enter parameters of an analogue sensor not covered.&nbsp;
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | ADC Properties
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-6-icon.png]]
 
| width="90%" | Channel
 
|-
 
| colspan="2" | Analogue Input Channel - Which pin is the analogue input connected to?&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Vref (mV)
 
|-
 
| colspan="2" | For a more accurate reading, enter the exact referance voltage.  &nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | VRef option
 
|-
 
| colspan="2" | Defines what is used as the ADC maximum reference. ADC Range = GND to VRef Voltage VDD - Defines the microcontrollers power supply pin as the max reference, VREF+ Pin - Dedicated pin on the microcontroller to allow for a variable reference voltage.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Conversion speed
 
|-
 
| colspan="2" | Clock setting to select how fast the ADC peripheral will perform an ADC conversion. The FRC setting is based on a RC time base and so will vary with temperature and pressure. Other settings are generally based on divisions of the master clock.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Acquisition cycles
 
|-
 
| colspan="2" | Number of micro seconds to wait for the ADC input to charge before starting the analogue sample.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Total average samples
 
|-
 
| colspan="2" | The number of ADC samples taken. The higher the number the more stable the reading. &nbsp;
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Sensor Characteristics
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Temp compensation x10
 
|-
 
| colspan="2" | Set value to compensate for sensor and other vairations. E.g. -10 = Set the temperature 1 degrees lower 5 =  Set the temperature 0.5 degrees higher&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Scale factor (mV x100)
 
|-
 
| colspan="2" | for a scale factor of 22mv/C or 22mV/F it's 2200. Scale factor is set for you automatically. It can only be adjusted when custom is selcted.  &nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Offset (mV)
 
|-
 
| colspan="2" | Offset is set for you automatically. It can only be adjusted when custom is selcted.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Max Temp
 
|-
 
| colspan="2" | Max Temp the sensor can reach is set for you automatically. It can only be adjusted when custom is selcted.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Min Temp
 
|-
 
| colspan="2" | Max Temp the sensor can reach is set for you automatically. It can only be adjusted when custom is selcted.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Centigrade
 
|-
 
| colspan="2" | 0 for a fahrenheit sensor. 1 for a centigrade sensor. Can only be changed when custom is selected.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Kelvin
 
|-
 
| colspan="2" | 1 for a kelvin sensor. Can only be changed when custom is selected.&nbsp;
 
|}==Macro reference==
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''VoltageADC'''
 
|-
 
| colspan="2" | Calculates what the approximate voltage should be based on Vref, Scale factor, Offset. For TSIC301, based on Max temp and Min temp only. &nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempIntCX10'''
 
|-
 
| colspan="2" | Value of integer temperature in deg C x10  E.g 22.5C will give the result of 225 This allows more contol if using integers to save memory 9999 = temperature outside of sensor range &nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempIntFX10'''
 
|-
 
| colspan="2" | Value of integer temperature in deg F x10  E.g 62.5F will give the result of 625 This allows more contol if using integers to save memory 9999 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''IntValueADC'''
 
|-
 
| colspan="2" | The Integer ADC value of the sensor output volttage &nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
Line 502: Line 150:
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
+
===IntValueADC===
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempFloatF'''
 
|-
 
| colspan="2" | Value of the temperature in deg F 999,9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempStringC'''
 
|-
 
| colspan="2" | String value of integer temperature in deg C to one decimal place. E.g 22.5 999,9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempFloatC'''
 
|-
 
| colspan="2" | Value of the temperature in deg C 999.9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
 
 
 
 
==Property reference==
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Select Sensor
 
|-
 
| colspan="2" | Select the required sensor. Custom allows you to enter parameters of an analogue sensor not covered.&nbsp;
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | ADC Properties
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-6-icon.png]]
 
| width="90%" | Channel
 
|-
 
| colspan="2" | Analogue Input Channel - Which pin is the analogue input connected to?&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Vref (mV)
 
|-
 
| colspan="2" | For a more accurate reading, enter the exact referance voltage.  &nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | VRef option
 
|-
 
| colspan="2" | Defines what is used as the ADC maximum reference. ADC Range = GND to VRef Voltage VDD - Defines the microcontrollers power supply pin as the max reference, VREF+ Pin - Dedicated pin on the microcontroller to allow for a variable reference voltage.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Conversion speed
 
|-
 
| colspan="2" | Clock setting to select how fast the ADC peripheral will perform an ADC conversion. The FRC setting is based on a RC time base and so will vary with temperature and pressure. Other settings are generally based on divisions of the master clock.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Acquisition cycles
 
|-
 
| colspan="2" | Number of micro seconds to wait for the ADC input to charge before starting the analogue sample.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Total average samples
 
|-
 
| colspan="2" | The number of ADC samples taken. The higher the number the more stable the reading. &nbsp;
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Sensor Characteristics
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Temp compensation x10
 
|-
 
| colspan="2" | Set value to compensate for sensor and other vairations. E.g. -10 = Set the temperature 1 degrees lower 5 =  Set the temperature 0.5 degrees higher&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Scale factor (mV x100)
 
|-
 
| colspan="2" | for a scale factor of 22mv/C or 22mV/F it's 2200. Scale factor is set for you automatically. It can only be adjusted when custom is selcted.  &nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Offset (mV)
 
|-
 
| colspan="2" | Offset is set for you automatically. It can only be adjusted when custom is selcted.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Max Temp
 
|-
 
| colspan="2" | Max Temp the sensor can reach is set for you automatically. It can only be adjusted when custom is selcted.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Min Temp
 
|-
 
| colspan="2" | Max Temp the sensor can reach is set for you automatically. It can only be adjusted when custom is selcted.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Centigrade
 
|-
 
| colspan="2" | 0 for a fahrenheit sensor. 1 for a centigrade sensor. Can only be changed when custom is selected.&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Kelvin
 
|-
 
| colspan="2" | 1 for a kelvin sensor. Can only be changed when custom is selected.&nbsp;
 
|}==Macro reference==
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''VoltageADC'''
 
|-
 
| colspan="2" | Calculates what the approximate voltage should be based on Vref, Scale factor, Offset. For TSIC301, based on Max temp and Min temp only. &nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempIntCX10'''
 
|-
 
| colspan="2" | Value of integer temperature in deg C x10  E.g 22.5C will give the result of 225 This allows more contol if using integers to save memory 9999 = temperature outside of sensor range &nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempIntFX10'''
 
|-
 
| colspan="2" | Value of integer temperature in deg F x10  E.g 62.5F will give the result of 625 This allows more contol if using integers to save memory 9999 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
Line 682: Line 164:
  
  
 +
===VoltageADC===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempStringF'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''VoltageADC'''
 
|-
 
|-
| colspan="2" | String value of integer temperature in degF to one decimal place. E.g 70.2 999,9 = temperature outside of sensor range&nbsp;
+
| colspan="2" | Calculates what the approximate voltage should be based on Vref, Scale factor, Offset. For TSIC301, based on Max temp and Min temp only. &nbsp;
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempFloatF'''
 
|-
 
| colspan="2" | Value of the temperature in deg F 999,9 = temperature outside of sensor range&nbsp;
 
 
|-
 
|-
 
|-
 
|-
Line 706: Line 176:
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempStringC'''
 
|-
 
| colspan="2" | String value of integer temperature in deg C to one decimal place. E.g 22.5 999,9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTempFloatC'''
 
|-
 
| colspan="2" | Value of the temperature in deg C 999.9 = temperature outside of sensor range&nbsp;
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
  
  

Latest revision as of 12:08, 24 July 2024

Author Medelec35
Version 1.0
Category Environmental


Analogue Temp Sensors component

A range of the most popular temperature analogue sensors which are: AD22100, AD22103, LM135, LM235, LM335, LM34, LM35, LM60, MCP9700, MCP9701, TC1047, TMP35, TMP36, TMP37 & TSIC301. Uses a single ADC pin which will allow you to display the temperature in C or F. If your sensor is not listed, there is a Custom option. You will be able to enter the scale factor, offset voltage, Temperature Compensation, min and maximum temperatures If the temperature is outside the min and max values, then 999.9 will be displayed.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_Analogue_Temperature_Sensors.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_Analogue_Temperature_Sensors.fcfx

Detailed description

No detailed description exists yet for this component

Examples

Example Program showing how to show the temperature in Celsius and Fahrenheit and expected ADC pin voltage on an LCD.

FC6 Icon.png Analogue Sensors Example

Macro reference

GetTempFloatC

Fc9-comp-macro.png GetTempFloatC
Value of the temperature in deg C 999.9 = temperature outside of sensor range 
Fc9-f32-icon.png - FLOAT Return


GetTempFloatF

Fc9-comp-macro.png GetTempFloatF
Value of the temperature in deg F 999,9 = temperature outside of sensor range 
Fc9-f32-icon.png - FLOAT Return


GetTempIntCX10

Fc9-comp-macro.png GetTempIntCX10
Value of integer temperature in deg C x10 E.g 22.5C will give the result of 225 This allows more contol if using integers to save memory 9999 = temperature outside of sensor range  
Fc9-s16-icon.png - INT Return


GetTempIntFX10

Fc9-comp-macro.png GetTempIntFX10
Value of integer temperature in deg F x10 E.g 62.5F will give the result of 625 This allows more contol if using integers to save memory 9999 = temperature outside of sensor range 
Fc9-s16-icon.png - INT Return


GetTempStringC

Fc9-comp-macro.png GetTempStringC
String value of integer temperature in deg C to one decimal place. E.g 22.5 999,9 = temperature outside of sensor range 
Fc9-string-icon.png - STRING Return


GetTempStringF

Fc9-comp-macro.png GetTempStringF
String value of integer temperature in degF to one decimal place. E.g 70.2 999,9 = temperature outside of sensor range 
Fc9-string-icon.png - STRING Return


IntValueADC

Fc9-comp-macro.png IntValueADC
The Integer ADC value of the sensor output volttage  
Fc9-s16-icon.png - INT Return


VoltageADC

Fc9-comp-macro.png VoltageADC
Calculates what the approximate voltage should be based on Vref, Scale factor, Offset. For TSIC301, based on Max temp and Min temp only.  
Fc9-f32-icon.png - FLOAT Return


Property reference

Fc9-prop-icon.png Properties
Fc9-type-16-icon.png Select Sensor
Select the required sensor. Custom allows you to enter parameters of an analogue sensor not covered. 
Fc9-conn-icon.png ADC Properties
Fc9-type-6-icon.png Channel
Analogue Input Channel - Which pin is the analogue input connected to? 
Fc9-type-21-icon.png Vref (mV)
For a more accurate reading, enter the exact referance voltage.  
Fc9-type-16-icon.png VRef option
Defines what is used as the ADC maximum reference. ADC Range = GND to VRef Voltage VDD - Defines the microcontrollers power supply pin as the max reference, VREF+ Pin - Dedicated pin on the microcontroller to allow for a variable reference voltage. 
Fc9-type-16-icon.png Conversion speed
Clock setting to select how fast the ADC peripheral will perform an ADC conversion. The FRC setting is based on a RC time base and so will vary with temperature and pressure. Other settings are generally based on divisions of the master clock. 
Fc9-type-14-icon.png Acquisition cycles
Number of micro seconds to wait for the ADC input to charge before starting the analogue sample. 
Fc9-type-21-icon.png Total average samples
The number of ADC samples taken. The higher the number the more stable the reading.  
Fc9-conn-icon.png Sensor Characteristics
Fc9-type-14-icon.png Temp compensation x10
Set value to compensate for sensor and other vairations. E.g. -10 = Set the temperature 1 degrees lower 5 = Set the temperature 0.5 degrees higher 
Fc9-type-21-icon.png Scale factor (mV x100)
for a scale factor of 22mv/C or 22mV/F it's 2200. Scale factor is set for you automatically. It can only be adjusted when custom is selcted.  
Fc9-type-21-icon.png Offset (mV)
Offset is set for you automatically. It can only be adjusted when custom is selcted. 
Fc9-type-14-icon.png Max Temp
Max Temp the sensor can reach is set for you automatically. It can only be adjusted when custom is selcted. 
Fc9-type-14-icon.png Min Temp
Max Temp the sensor can reach is set for you automatically. It can only be adjusted when custom is selcted. 
Fc9-type-14-icon.png Centigrade
0 for a fahrenheit sensor. 1 for a centigrade sensor. Can only be changed when custom is selected. 
Fc9-type-14-icon.png Kelvin
1 for a kelvin sensor. Can only be changed when custom is selected.