Component: Temperature (DS1822) (Environmental): Difference between revisions
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
|||
| (21 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
{| style="width:50%" | |||
{| | |||
|- | |- | ||
| width="20%" style="color: gray;" | Author | | width="20%" style="color:gray;" | Author | ||
| MatrixTSL | | MatrixTSL | ||
|- | |- | ||
| width="20%" style="color: gray;" | Version | | width="20%" style="color:gray;" | Version | ||
| 1.0 | | 1.0 | ||
|- | |- | ||
| width="20%" style="color: gray;" | Category | | width="20%" style="color:gray;" | Category | ||
| Environmental | | Environmental | ||
|} | |} | ||
==Temperature (DS1822) component== | |||
A rugged temperature sensor allowing one or more sensors to be addressed and read. Capable of reading temperatures from -55 to +125 degrees C. Requires a One Wire component to perform the bus operations. | |||
== | ==Component Source Code== | ||
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_Temperature_DS1822.fcfx FC_Comp_Source_Temperature_DS1822.fcfx] | |||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_Temperature_DS1822.fcfx FC_Comp_Source_Temperature_DS1822.fcfx] | |||
==Detailed description== | |||
''No detailed description exists yet for this component'' | |||
==Examples== | |||
This example shows how to connect the DS1822 component to the OneWire component and either select a specific device on the bus or scan through the devices on the bus collecting the temperature readings. | |||
The temperature and serial number is output using a UART connection as is onboard a Arduino or ESP32 device. | |||
{{fcfile|Example_DS1822.fcfx|Example DS1822}} | |||
==Macro reference== | |||
== | ===AddressNextDevice=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''AddressNextDevice''' | |||
|- | |||
| colspan="2" | Scans for the next connected device with a matching family code. Goes through the device list generated by the ScanBus macro. | |||
|- | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
===AddressSpecificDevice=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''AddressSpecificDevice''' | |||
|- | |||
| colspan="2" | Starts a temperature conversion on a specific device using a hex string identifier. SerialNumber parameter should be 12 characters and contain the 48-bit Serial. | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | |||
| width="90%" | SerialNumber | |||
|- | |||
| colspan="2" | 48-bit Serial Number e.g. "32DF4A3C1901" | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
===GetSerialString=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''GetSerialString''' | |||
|- | |||
| colspan="2" | Gets the Serial String for the current addressed device. | |||
|- | |||
|- | |||
| 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'' | |||
|} | |||
===GetTemperature=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''GetTemperature''' | |||
|- | |||
| colspan="2" | Reads the temperature from the last sample on the selected device. The selected device is set using the AddressNext or AddressSpecific macros. | |||
|- | |||
|- | |||
| 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'' | |||
|} | |||
===Initialise=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Initialise''' | |||
|- | |||
| colspan="2" | Configures each matching sensor on the bus with the specified conversion bits. | |||
|- | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
===SampleAddressedDevice=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''SampleAddressedDevice''' | |||
|- | |||
| colspan="2" | Performs a temperature conversion on the current addressed device. Requires one of the Address component macros to be called. The temperature can be read using the ReadTemperature macro. | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL | |||
| width="90%" | WaitForCompletion | |||
|- | |||
| colspan="2" | 0=Dont Wait, 1=Block and Wait To Complete | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
===SampleAllDevices=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''SampleAllDevices''' | |||
|- | |||
| colspan="2" | Performs a temperature conversion on all compatible devices. The temperature can be read using the ReadTemperature macro. Brefore calling ReadTemperature you need to use one of the Address macros. | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL | |||
| width="90%" | WaitForCompletion | |||
|- | |||
| colspan="2" | 0=Dont Wait, 1=Block and Wait To Complete | |||
|- | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | |||
|} | |||
==Property reference== | |||
The maximum amount of time in milliseconds it will take for a sample to complete. | {| class="mtx-class-macrotable wikitable" | ||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Properties''' | |||
|- | |||
|- | |||
The maximum resolution steps that the temperature can be read in. | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
| width="90%" | One Wire Component | |||
|- | |||
| colspan="2" | Link to the one wire component to host the bus. | |||
|- | |||
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | |||
No - We use the panel GUI to perform the simulation. | | width="90%" class="mtx-class-propfolder" | Sensor Settings | ||
|- | |||
Yes - We use OneWire comms via an API to communicate with real hardware. | |- | ||
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |||
| width="90%" | CRC Checking | |||
|- | |||
| colspan="2" | Allows the data to be checked before being returned. Useful if the comunication with the sensor cannot be guarenteed. GetTemperature will return 999.9 if the CRC is not a match. | |||
|- | |||
Sens the number of sensors we can communicate with during simulation | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | ||
| width="90%" | Alarm High | |||
|- | |||
| colspan="2" | The high byte of the alarm range | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | |||
Serial number for simulated one wire device | | width="90%" | Alarm Low | ||
|- | |||
| colspan="2" | The Low byte of the Alarm range | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Conversion Bits | |||
|- | |||
| colspan="2" | The number of bits used to perform a temperature sample. Controls the conversion time and the resolution. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | |||
| width="90%" | Max Conversion Time | |||
|- | |||
| colspan="2" | The maximum amount of time in milliseconds it will take for a sample to complete. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]] | |||
| width="90%" | Temperature Resolution | |||
|- | |||
| colspan="2" | The maximum resolution steps that the temperature can be read in. | |||
|- | |||
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | |||
| width="90%" class="mtx-class-propfolder" | Simulation | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |||
| width="90%" | Simulate Comms | |||
|- | |||
| colspan="2" | No - We use the panel GUI to perform the simulation. Yes - We use OneWire comms via an API to communicate with real hardware. | |||
|- | |||
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | |||
| width="90%" class="mtx-class-propfolder" | Panel Simulation | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Number Sensors | |||
|- | |||
| colspan="2" | Sens the number of sensors we can communicate with during simulation | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]] | |||
| width="90%" | Serial 0 | |||
|- | |||
| colspan="2" | Serial number for simulated one wire device | |||
|} | |||
Latest revision as of 14:37, 13 July 2026
| Author | MatrixTSL |
| Version | 1.0 |
| Category | Environmental |
Temperature (DS1822) component
A rugged temperature sensor allowing one or more sensors to be addressed and read. Capable of reading temperatures from -55 to +125 degrees C. Requires a One Wire component to perform the bus operations.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_Temperature_DS1822.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_Temperature_DS1822.fcfx
Detailed description
No detailed description exists yet for this component
Examples
This example shows how to connect the DS1822 component to the OneWire component and either select a specific device on the bus or scan through the devices on the bus collecting the temperature readings.
The temperature and serial number is output using a UART connection as is onboard a Arduino or ESP32 device.
Macro reference
AddressNextDevice
| AddressNextDevice | |
| Scans for the next connected device with a matching family code. Goes through the device list generated by the ScanBus macro. | |
| Return | |
AddressSpecificDevice
GetSerialString
| GetSerialString | |
| Gets the Serial String for the current addressed device. | |
| Return | |
GetTemperature
| GetTemperature | |
| Reads the temperature from the last sample on the selected device. The selected device is set using the AddressNext or AddressSpecific macros. | |
| Return | |
Initialise
| Initialise | |
| Configures each matching sensor on the bus with the specified conversion bits. | |
| Return | |
SampleAddressedDevice
SampleAllDevices