示例:使用 OpenWeather Client SL
图书馆
这个 OpenWeather Client SL Example.project
示例项目展示了如何使用 OpenWeather Client SL
用于通过 OpenWeather API 查询天气数据的库。
准备
为了从外部查询数据 OpenWeather
API,您需要输入有效的 API 密钥。必须为该密钥激活 “One Call API 3.0” 服务。如果您已经生成了密钥,则无需执行任何进一步的准备步骤。
如果您还没有密钥并想要创建新密钥,或者不确定是否已为密钥激活所需的服务,请按以下步骤操作:
创建一个账户。
在... 上创建一个账户 开放天气网站 或者如果您已经注册,请登录。
生成密钥。
登录后,导航到
API keys
菜单项。在这里,您可以查看所有活跃的 API 密钥并使用创建新密钥Generate
按钮。激活 “One Call API 3.0” 服务。
此服务是库正常运行所必需的。导航到
Billing Plans
菜单项并搜索 “One Call API 3.0” 服务。如果您尚未订阅此服务,则可以通过单击
Subscribe
按钮。Status
字段应该是Activated
。完成此步骤后,您应该能够看到以下内容:
可选:设置通话限制。
如果您只想使用每日免费配额,则可以设置上限以确保拨打的电话不超过1000个。
为此,请导航到
Billing Plans
菜单项,以便您可以看到上面显示的视图。Calls per day
列中,您可以定义每天允许的最大呼叫次数。完成了
准备好您的 API 密钥以运行示例应用程序。
描述
示例中有关位置信息的一般说明
在示例中,位置数据 (
GeoLocation
) 是在应用程序相应主程序的声明区域中静态定义的(此处:CFC_PRG
)。您可以更改此对象的值来查询其他位置的天气数据。
注意
只有格式为 “十进制” (DD) 的 GPS 坐标(由经度和纬度定义)才会真正影响请求数据的位置。其他信息,例如城市名称,无效。
您可以通过地图服务获取位置的坐标,并在必要时手动输入其余信息。或者,你也可以使用
GeoLocator
功能块(参见GeoLocatorExamples
应用程序)以正确填写GeoLocation
结构。
应用程序: CurrentWeatherExample
在此应用程序中,从 OpenWeather API 请求指定位置的当前天气数据。 sApiKey
字段中,输入您的 API 密钥并设置 xLoadWeatherData
标记为 TRUE
以便获取数据。数据已加载到 currentWeatherData
结构。您可以在监控区域中查看结构的内容。
应用程序: WeatherForecastExample
在此应用程序中,请求向指定位置提供未来 48 小时的每小时天气预报 OpenWeather API
。 sApiKey
字段中,输入您的 API 密钥并设置 xLoadWeatherData
标记为 TRUE
以便获取数据。数据已加载到 weatherForecast
结构。您可以在监控区域中查看结构的内容。
应用程序: CurrentWeatherAndForecastExample
在此应用程序中,请求指定位置的当前天气和未来 48 小时的每小时天气预报 OpenWeather API
。 sApiKey
字段中,输入您的 API 密钥并设置 xLoadWeatherData
标记为 TRUE
以便获取数据。数据已加载到 currentWeatherData
和 weatherForecast
结构。您可以在监控区域中查看结构的内容。
重要
这个 CurrentWeatherAndForecastExample
功能块可能给人的印象是它只是在执行 CurrentWeather
和 ForecastWeather
一个接一个的功能块。事实并非如此。这个 CurrentWeatherAndForecastExample
函数块只需一次 API 调用即可查询当前天气数据和预测天气数据。因此,当需要两种类型的数据时,应始终使用它。
应用程序: GeoLocatorExamples
在此应用程序中,要求提供位置描述(但最重要的是位置的坐标) OpenWeather Geocoding
API。
在 sApiKey
字段中,输入您的 API 密钥并设置 xLoad[...]
标记为 TRUE
以便获取数据。数据已加载到 location
结构。您可以在监控区域中查看结构的内容。
应用程序: VisuExample
该应用程序通过可视化界面显示当前天气的查询和未来 48 小时的天气预报。
可视化是快速概览可用信息的好方法。
用户界面
启动应用程序时,将打开以下可视化窗口:

控制栏
您可以使用左侧的控制栏来控制应用程序。
点击
按钮来获取和显示来自 API 服务器的真实数据。请注意,您需要为此设置 API 密钥。如果单击此按钮无效,请检查您输入的 API 密钥。
点击
按钮加载不需要 API 调用的虚拟数据。然后从包含先前的 API 响应的 JSON 文件中加载这些数据。
点击
按钮以显示和隐藏您输入 API 密钥的窗口。
API 密钥叠加层
点击
按钮将打开输入 API 密钥的窗口。在文本字段中单击以输入或更改您的密钥。
显示当前天气
顶部中间的面板显示当前的天气数据。将显示所有可用信息。您可以使用工具提示(用鼠标指针将鼠标悬停在其上方)来显示界面上没有标签的值的描述
显示天气预报
底部中央面板显示天气预报。为了获得清晰的显示效果,减少了此处显示的信息。从理论上讲,每个条目几乎都有所有信息,也可用于当前天气(日出/日落时间除外)
由于未来 48 小时的预测包含每小时一个数据点,因此有 48 个面板可供切换。
使用
和
按钮可将 48 个条目的视图向左或向右移动一个条目。
和
按钮可快速跳到起点或结尾。
系统要求和限制
编程系统 | CODESYS Development System (版本 3.5.18.0 或更高版本) |
运行时系统 | CODESYS Control Win (版本 3.5.18.0) |
附加组件 | - |
注意
下載 项目