Difference between revisions of "Component: BBC Weather Observation (Comms: IoT/Cloud)"

From Flowcode Help
Jump to navigationJump to search
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
+
{| style="width:50%"
 
 
{| 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 (Release)
+
| 1.0
 
|-
 
|-
| width="20%" style="color: gray;" | Category
+
| width="20%" style="color:gray;" | Category
 
| Comms: IoT/Cloud
 
| Comms: IoT/Cloud
 
|}
 
|}
  
  
 +
==BBC Weather Observation component==
 +
Easily allows you to collect observed weather metrics for your area using the BBC Weather data service. Supports temperature and humidty for your selected area. Also available are Wind Direction, Wind Speed and Air Pressure but please note these are not always available depending on your selected area.
  
==[[File:Component Icon bf90426c_1763_4a7a_be5c_b3e442e3f6d8.png|Image]] BBC Weather Observation component==
+
==Component Pack==
Easily allows you to collect observed weather metrics for your area using the BBC Weather data service.
 
Supports temperature and humidty for your selected area.
 
Also available are Wind Direction, Wind Speed and Air Pressure but please note these are not always available depending on your selected area.
 
  
 +
COMMSC
  
==Examples==
+
==Detailed description==
  
Here is a basic example to read the observation data and report the information on a graphical display.
 
  
{{Fcfile|BBCWeatherDemo.fcfx|BBCWeatherDemo}}
 
  
  
The location can be set by adjusting the BBC Weather location property, see the component property tooltips for more information on how to do this.
 
  
On an embedded device you would need a TCP/IP component to allow the communications to the BBC server. This then links to the Network Comms component.
 
  
  
  
==Downloadable macro reference==
 
  
===<span style="font-weight: normal;"><u><tt>GetWindDirection</tt></u></span>===
 
Reads the reported wind direction as a string.
 
  
Please note this data may not be available for your selected location.
 
  
'''Parameters'''
+
''No detailed description exists yet for this component''
  
:''This macro has no parameters''
+
==Examples==
  
  
'''Return value'''
 
  
:[[Variable Types|STRING]]
 
  
  
===<span style="font-weight: normal;"><u><tt>RequestData</tt></u></span>===
 
Requests data about your selected location from the BBC weather service.
 
  
Returns true if the request was successful.
 
  
Must be called before trying to call any of the GetXXX macros.
 
  
'''Parameters'''
 
  
:''This macro has no parameters''
 
  
  
'''Return value'''
 
  
:[[Variable Types|BOOL]] : Returns true if the operation is a success, else false
 
  
 +
Here is a basic example to read the observation data and report the information on a graphical display.
  
===<span style="font-weight: normal;"><u><tt>GetHumidity</tt></u></span>===
+
{{Fcfile|BBCWeatherDemo.fcfx|BBCWeatherDemo}}
Reads the reported humidity in Relative Humdity.
 
  
'''Parameters'''
 
  
:''This macro has no parameters''
+
The location can be set by adjusting the BBC Weather location property, see the component property tooltips for more information on how to do this.
  
 +
On an embedded device you would need a TCP/IP component to allow the communications to the BBC server. This then links to the Network Comms component.
  
'''Return value'''
 
  
:[[Variable Types|BYTE]]
 
  
 +
==Downloadable macro reference==
  
===<span style="font-weight: normal;"><u><tt>GetTemperature</tt></u></span>===
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
Reads the reported temperature in the selected scale.
+
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetWindDirection'''
 +
|-
 +
| colspan="2" | Reads the reported wind direction as a string. Please note this data may not be available for your selected location.&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''
 +
|}
  
'''Parameters'''
 
  
:[[Variable Types|BOOL]] ''Scale''
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
::0 = Celcius, 1 = Farenheit
+
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RequestData'''
 +
|-
 +
| colspan="2" | Requests data about your selected location from the BBC weather service. Returns true if the request was successful. Must be called before trying to call any of the GetXXX macros.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
  
'''Return value'''
+
{| 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;" | '''GetHumidity'''
 +
|-
 +
| colspan="2" | Reads the reported humidity in Relative Humdity.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
:[[Variable Types|INT]]
 
  
 +
{| 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;" | '''GetTemperature'''
 +
|-
 +
| colspan="2" | Reads the reported temperature in the selected scale.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
 +
| width="90%" | Scale
 +
|-
 +
| colspan="2" | 0 = Celcius, 1 = Farenheit&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''
 +
|}
  
===<span style="font-weight: normal;"><u><tt>GetWindSpeed</tt></u></span>===
 
Reads the reported wind speed in MPH.
 
  
Please note this data may not be available for your selected location.
+
{| 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;" | '''GetWindSpeed'''
 +
|-
 +
| colspan="2" | Reads the reported wind speed in MPH. Please note this data may not be available for your selected location.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
'''Parameters'''
 
  
:''This macro has no parameters''
+
{| 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;" | '''SetLocationCode'''
 +
|-
 +
| colspan="2" | Allows the location code to be altered from the default location code set in the component properties. After changing the location the RequestData macro must be called to refresh the forecast variables.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
 +
| width="90%" | NewLocation
 +
|-
 +
| colspan="2" | New location string, see Location property tooltip for more info.&nbsp;
 +
|-
 +
| 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''
 +
|}
  
  
'''Return value'''
+
{| 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;" | '''GetPressure'''
 +
|-
 +
| colspan="2" | Reads the reported air pressure in milli bar (mb). Please note this data may not be available for your selected location.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
:[[Variable Types|BYTE]]
 
  
 
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===<span style="font-weight: normal;"><u><tt>SetLocationCode</tt></u></span>===
+
|-
Allows the location code to be altered from the default location code set in the component properties.
+
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetLocationName'''
After changing the location the RequestData macro must be called to refresh the forecast variables.
+
|-
 
+
| colspan="2" | Reads the reported location name as a string.&nbsp;
'''Parameters'''
+
|-
 
+
|-
:[[Variable Types|<- STRING]] ''NewLocation''
+
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
::New location string, see Location property tooltip for more info.
+
| width="90%" style="border-top: 2px solid #000;" | ''Return''
::''This parameter may be returned back to the caller''
+
|}
 
 
 
 
'''Return value'''
 
 
 
:''This call does not return a value''
 
 
 
 
 
===<span style="font-weight: normal;"><u><tt>GetPressure</tt></u></span>===
 
Reads the reported air pressure in milli bar (mb).
 
 
 
Please note this data may not be available for your selected location.
 
 
 
'''Parameters'''
 
 
 
:''This macro has no parameters''
 
 
 
 
 
'''Return value'''
 
 
 
:[[Variable Types|UINT]]
 
 
 
 
 
===<span style="font-weight: normal;"><u><tt>GetLocationName</tt></u></span>===
 
Reads the reported location name as a string.
 
 
 
'''Parameters'''
 
 
 
:''This macro has no parameters''
 
 
 
 
 
'''Return value'''
 
 
 
:[[Variable Types|STRING]]
 
 
 
 
 
===<span style="font-weight: normal;"><u><tt>Initialise</tt></u></span>===
 
Sets up the component ready to collect weather data.
 
 
 
'''Parameters'''
 
 
 
:''This macro has no parameters''
 
 
 
 
 
'''Return value'''
 
 
 
:''This call does not return a value''
 
  
  
 +
{| 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;" | '''Initialise'''
 +
|-
 +
| colspan="2" | Sets up the component ready to collect weather data.&nbsp;
 +
|-
 +
|-
 +
| 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''
 +
|}
  
==Simulation macro reference==
 
  
''This component does not contain any simulation macros''
 
  
  
 
==Property reference==
 
==Property reference==
<span style="font-weight: normal;"><u>Network Comms Component</u></span>
 
  
This property is of type ''Panel object'' and can be referenced with the variable name ''NetworkCommsComp''.
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
+
|-
Network Communications component to use as the bridge to the TCP/IP network.
+
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
<span style="font-weight: normal;"><u>BBC IP Address</u></span>
+
|-
 
+
|-
This property is of type ''Line of text'' and can be referenced with the variable name ''IPAddr''.
+
| width="10%" align="center" | [[File:Fc9-type-17-icon.png]]
 
+
| width="90%" | Network Comms Component
IP Address linked to the following URL: weather-broker-cdn.api.bbci.co.uk
+
|-
 
+
| colspan="2" | Network Communications component to use as the bridge to the TCP/IP network.&nbsp;
<span style="font-weight: normal;"><u>Location Code</u></span>
+
|-
 
+
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
This property is of type ''Line of text'' and can be referenced with the variable name ''Location''.
+
| width="90%" | BBC IP Address
 
+
|-
BBC code for your area.  
+
| colspan="2" | IP Address linked to the following URL: weather-broker-cdn.api.bbci.co.uk&nbsp;
 
+
|-
In a web browser go to www.bbc.co.uk/weather/
+
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
 
+
| width="90%" | Location Code
Then type in your city in the search bar and your code will be shown at the end of the URL.
+
|-
 
+
| colspan="2" | BBC code for your area. In a web browser go to www.bbc.co.uk/weather/ Then type in your city in the search bar and your code will be shown at the end of the URL. For example Manchester in the UK = 2643123 In the UK you can also use the first half of your post code, e.g. HX1&nbsp;
For example Manchester in the UK = 2643123
+
|-
 
+
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
In the UK you can also use the first half of your post code, e.g. HX1
+
| width="90%" | Receive Timeout
 
+
|-
<span style="font-weight: normal;"><u>Receive Timeout</u></span>
+
| colspan="2" | Maximum time to wait for valid incoming data.&nbsp;
 
+
|}
This property is of type ''Unsigned integer'' and can be referenced with the variable name ''RxTimeout''.
 
 
 
Maximum time to wait for valid incoming data.
 

Latest revision as of 17:21, 9 November 2022

Author MatrixTSL
Version 1.0
Category Comms: IoT/Cloud


BBC Weather Observation component

Easily allows you to collect observed weather metrics for your area using the BBC Weather data service. Supports temperature and humidty for your selected area. Also available are Wind Direction, Wind Speed and Air Pressure but please note these are not always available depending on your selected area.

Component Pack

COMMSC

Detailed description

No detailed description exists yet for this component

Examples

Here is a basic example to read the observation data and report the information on a graphical display.

FC6 Icon.png BBCWeatherDemo


The location can be set by adjusting the BBC Weather location property, see the component property tooltips for more information on how to do this.

On an embedded device you would need a TCP/IP component to allow the communications to the BBC server. This then links to the Network Comms component.


Downloadable macro reference

Fc9-comp-macro.png GetWindDirection
Reads the reported wind direction as a string. Please note this data may not be available for your selected location. 
Fc9-string-icon.png - STRING Return


Fc9-comp-macro.png RequestData
Requests data about your selected location from the BBC weather service. Returns true if the request was successful. Must be called before trying to call any of the GetXXX macros. 
Fc9-bool-icon.png - BOOL Return


Fc9-comp-macro.png GetHumidity
Reads the reported humidity in Relative Humdity. 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png GetTemperature
Reads the reported temperature in the selected scale. 
Fc9-bool-icon.png - BOOL Scale
0 = Celcius, 1 = Farenheit 
Fc9-s16-icon.png - INT Return


Fc9-comp-macro.png GetWindSpeed
Reads the reported wind speed in MPH. Please note this data may not be available for your selected location. 
Fc9-u8-icon.png - BYTE Return


Fc9-comp-macro.png SetLocationCode
Allows the location code to be altered from the default location code set in the component properties. After changing the location the RequestData macro must be called to refresh the forecast variables. 
Fc9-string-icon.png - STRING NewLocation
New location string, see Location property tooltip for more info. 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png GetPressure
Reads the reported air pressure in milli bar (mb). Please note this data may not be available for your selected location. 
Fc9-u16-icon.png - UINT Return


Fc9-comp-macro.png GetLocationName
Reads the reported location name as a string. 
Fc9-string-icon.png - STRING Return


Fc9-comp-macro.png Initialise
Sets up the component ready to collect weather data. 
Fc9-void-icon.png - VOID Return



Property reference

Fc9-prop-icon.png Properties
Fc9-type-17-icon.png Network Comms Component
Network Communications component to use as the bridge to the TCP/IP network. 
Fc9-type-10-icon.png BBC IP Address
IP Address linked to the following URL: weather-broker-cdn.api.bbci.co.uk 
Fc9-type-10-icon.png Location Code
BBC code for your area. In a web browser go to www.bbc.co.uk/weather/ Then type in your city in the search bar and your code will be shown at the end of the URL. For example Manchester in the UK = 2643123 In the UK you can also use the first half of your post code, e.g. HX1 
Fc9-type-21-icon.png Receive Timeout
Maximum time to wait for valid incoming data.