From 93f964b7862b1a1acf7e11cb1640c24c45146c7c Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 6 Dec 2017 08:10:25 +0100 Subject: [PATCH] Update ADS documentation (#4145) --- source/_components/ads.markdown | 56 ++++++++---------- source/_components/binary_sensor.ads.markdown | 17 +++--- source/_components/light.ads.markdown | 13 ++-- source/_components/sensor.ads.markdown | 24 +++----- source/_components/switch.ads.markdown | 17 +++--- source/images/supported_brands/beckhoff.png | Bin 0 -> 7728 bytes 6 files changed, 54 insertions(+), 73 deletions(-) create mode 100644 source/images/supported_brands/beckhoff.png diff --git a/source/_components/ads.markdown b/source/_components/ads.markdown index f24715471ce..cea2088d32e 100644 --- a/source/_components/ads.markdown +++ b/source/_components/ads.markdown @@ -7,33 +7,15 @@ sidebar: true comments: false sharing: true footer: true -logo: home-assistant.png +logo: beckhoff.png ha_category: Hub -ha_release: 0.60 +ha_release: "0.60" ha_iot_class: "Local Push" --- -The ADS (automation device specification) describes a device-independent and -fieldbus-independent interface for communication between Beckhoff® automation -devices running TwinCAT® and other devices implementing this interface. - -Configuration parameters: - -{% configuration %} - device: - required: true - description: The AMS NetId that identifies the device - type: string - port: - required: true - description: The port that runs the AMS server on the device, typically this would be 801 or 851 - type: integer - ip_address: - required: false - description: The IP-Address of the ADS device, if not set the first 4 bytes of the device id will be used - type: string -{% endconfiguration %} +The ADS (automation device specification) describes a device-independent and fieldbus independent interface for communication between [Beckhoff](https://www.beckhoff.com/) automation devices running [TwinCAT](http://www.beckhoff.hu/english.asp?twincat/default.htm) and other devices implementing this interface. +To enable ADS, add the following lines to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry @@ -42,10 +24,24 @@ ads: port: 48898 ``` -## Service +{% configuration %} + device: + required: true + description: The AMS NetId that identifies the device. + type: string + port: + required: true + description: The port that runs the AMS server on the device, typically this would be 801 or 851. + type: int + ip_address: + required: false + description: The IP address of the ADS device, if not set the first 4 bytes of the device id will be used. + type: string +{% endconfiguration %} -The ADS component will register the service `write_by_name` allowing you to -write a value to a variable on your ADS device. +## {% linkable_title Service %} + +The ADS component will register the service `write_by_name` allowing you to write a value to a variable on your ADS device. ```json { @@ -57,9 +53,7 @@ write a value to a variable on your ADS device. Service parameters: -- **adsvar**: name of the variable on the ADS device. To access global variables -on *TwinCAT2* use a prepending dot `.myvariable`, for TwinCAT3 use -`GBL.myvariable` -- **adstype**: specify the type of the variable. Use one of the following: -`int`, `byte`, `uint`, `bool` -- **value**: the value that will be written in the variable +- **adsvar**: Name of the variable on the ADS device. To access global variables on *TwinCAT2* use a prepending dot `.myvariable`, for TwinCAT3 use +`GBL.myvariable`. +- **adstype**: Specify the type of the variable. Use one of the following: `int`, `byte`, `uint`, `bool` +- **value**: The value that will be written in the variable. diff --git a/source/_components/binary_sensor.ads.markdown b/source/_components/binary_sensor.ads.markdown index a76adbfbcd9..753858d9737 100644 --- a/source/_components/binary_sensor.ads.markdown +++ b/source/_components/binary_sensor.ads.markdown @@ -7,16 +7,15 @@ sidebar: true comments: false sharing: true footer: true -logo: home-assistant.png +logo: beckhoff.png ha_category: Binary Sensor -ha_release: 0.60 +ha_release: "0.60" ha_iot_class: "Local Push" --- -The binary sensor can be used to monitor a boolean value on your ADS device. +The `ads` binary sensor platform can be used to monitor a boolean value on your ADS device. -To use your ADS device, you first have to set up your [ADS -hub](/components/ads/) and then add the following to your `configuration.yaml` +To use your ADS device, you first have to set up your [ADS hub](/components/ads/) and then add the following to your `configuration.yaml` file: ```yaml @@ -26,19 +25,17 @@ binary_sensor: adsvar: .boolean1 ``` -Configuration variables: - {% configuration %} adsvar: required: true - description: The name of the variable which you want to access on the ADS device + description: The name of the variable which you want to access on the ADS device. type: string name: required: false - description: An identifier for the light in the frontend + description: An identifier for the light in the frontend. type: string device_class: required: false - description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend + description: The [type/class](/components/binary_sensor/) of the sensor to set the icon in the frontend. type: string {% endconfiguration %} diff --git a/source/_components/light.ads.markdown b/source/_components/light.ads.markdown index 6a46c562747..b5188cf33e8 100644 --- a/source/_components/light.ads.markdown +++ b/source/_components/light.ads.markdown @@ -7,14 +7,15 @@ sidebar: true comments: false sharing: true footer: true -logo: home-assistant.png +logo: beckhoff.png ha_category: Light -ha_release: 0.60 +ha_release: "0.60" ha_iot_class: "Local Push" --- -To use your ADS device, you first have to set up your [ADS -hub](/components/ads/) and then add the following to your `configuration.yaml` +The `ads` light platform allows you to control your connecte ADS lights. + +To use your ADS device, you first have to set up your [ADS hub](/components/ads/) and then add the following to your `configuration.yaml` file: ```yaml @@ -25,8 +26,6 @@ light: adsvar_brightness: GVL.brightness ``` -Configuration variables: - {% configuration %} adsvar: required: true @@ -40,4 +39,4 @@ Configuration variables: required: false description: An identifier for the Light in the frontend type: string -{% endconfiguration %} \ No newline at end of file +{% endconfiguration %} diff --git a/source/_components/sensor.ads.markdown b/source/_components/sensor.ads.markdown index e7a960b6777..0e65a67bb60 100644 --- a/source/_components/sensor.ads.markdown +++ b/source/_components/sensor.ads.markdown @@ -7,17 +7,15 @@ sidebar: true comments: false sharing: true footer: true -logo: home-assistant.png +logo: beckhoff.png ha_category: Sensor -ha_release: 0.60 +ha_release: "0.60" ha_iot_class: "Local Push" --- -The `ADS` sensor platform allows reading the value of a numeric variable on -your ADS device. The variable can be of type *INT*, *UINT* or *BYTE*. +The `ads` sensor platform allows reading the value of a numeric variable on your ADS device. The variable can be of type *INT*, *UINT* or *BYTE*. -To use your ADS device, you first have to set up your [ADS -hub](/components/ads/) and then add the following to your `configuration.yaml` +To use your ADS device, you first have to set up your [ADS hub](/components/ads/) and then add the following to your `configuration.yaml` file: ```yaml @@ -29,29 +27,25 @@ sensor: adstype: int ``` -Configuration variables: - {% configuration %} adsvar: required: true - description: The name of the variable which you want to access + description: The name of the variable which you want to access. type: string adstype: required: false - description: The datatype of the ADS variable, possible values are int, uint, byte + description: The datatype of the ADS variable, possible values are int, uint, byte. default: int type: string name: required: false - description: An identifier for the sensor + description: An identifier for the sensor. type: string factor: required: false - description: A factor that divides the stored value before displaying in Home Assistant + description: A factor that divides the stored value before displaying in Home Assistant. default: 1 type: integer {% endconfiguration %} -The *factor* can be used to implement fixed decimals. E.g., set *factor* to 100 -if you want to display a fixed decimal value with two decimals. A variable -value of `123` will be displayed as `1.23`. \ No newline at end of file +The *factor* can be used to implement fixed decimals. E.g., set *factor* to 100 if you want to display a fixed decimal value with two decimals. A variable value of `123` will be displayed as `1.23`. diff --git a/source/_components/switch.ads.markdown b/source/_components/switch.ads.markdown index 0053a28734f..28396413292 100644 --- a/source/_components/switch.ads.markdown +++ b/source/_components/switch.ads.markdown @@ -7,17 +7,15 @@ sidebar: true comments: false sharing: true footer: true -logo: home-assistant.png +logo: beckhoff.png ha_category: Switch -ha_release: 0.60 +ha_release: "0.60" ha_iot_class: "Local Push" --- -An ADS switch accesses a boolean variable on the connected ADS device. The -variable is identified by its name. +The `ads` switch platform accesses a boolean variable on the connected ADS device. The variable is identified by its name. -To use your ADS device, you first have to set up your [ADS -hub](/components/ads/) and then add the following to your `configuration.yaml` +To use your ADS device, you first have to set up your [ADS hub](/components/ads/) and then add the following to your `configuration.yaml` file: ```yaml @@ -26,15 +24,14 @@ switch: - platform: ads adsvar: .global_bool ``` -Configuration variables: {% configuration %} adsvar: required: true - description: The name of the variable which you want to access on the ADS device + description: The name of the variable which you want to access on the ADS device. type: string name: required: false - description: An identifier for the switch in the frontend + description: An identifier for the switch in the frontend. type: string -{% endconfiguration %} \ No newline at end of file +{% endconfiguration %} diff --git a/source/images/supported_brands/beckhoff.png b/source/images/supported_brands/beckhoff.png new file mode 100644 index 0000000000000000000000000000000000000000..8fc9d8e027bde2409fe2557d22ac682661469f1e GIT binary patch literal 7728 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 B?FIk< literal 0 HcmV?d00001