From fe36aa4816c4bc8a6356ac44131db483e6e018a2 Mon Sep 17 00:00:00 2001 From: Brian ONeill Date: Thu, 10 Jun 2021 16:01:59 -0700 Subject: [PATCH] Add support for PDO extensions close #58 #68 --- canopen_monitor/__main__.py | 20 +- canopen_monitor/parse/__init__.py | 3 +- canopen_monitor/parse/eds.py | 123 +- tests/__init__.py | 2906 ++++++++++++++++++++++++++--- tests/spec_eds_parser.py | 104 +- 5 files changed, 2892 insertions(+), 264 deletions(-) diff --git a/canopen_monitor/__main__.py b/canopen_monitor/__main__.py index 669cfa7..bd47f1c 100755 --- a/canopen_monitor/__main__.py +++ b/canopen_monitor/__main__.py @@ -5,7 +5,7 @@ from .app import App from .meta import Meta from .can import MagicCANBus, MessageTable -from .parse import CANOpenParser, load_eds_file, EDS, DataType +from .parse import CANOpenParser, load_eds_files, EDS, DataType def init_dirs(): @@ -13,20 +13,12 @@ def init_dirs(): os.makedirs(CACHE_DIR, exist_ok=True) -def load_eds_files(filepath: str = CACHE_DIR) -> dict: - configs = {} - for file in os.listdir(filepath): - full_path = f'{filepath}/{file}' - if file.lower().endswith(".eds") or file.lower().endswith(".dcf"): - config = load_eds_file(full_path) - configs[config.node_id] = config - return configs - def enable_ecss_time(configs: dict) -> None: - for od in configs: - if '0x2101' in od: - od['0x2101'].data_type = DataType.ECSS_TIME.value + pass +# for od in configs: +# if 0x2101 in od: +# od[0x2101].data_type = DataType.ECSS_TIME.value def main(): @@ -61,7 +53,7 @@ def main(): init_dirs() meta = Meta(CONFIG_DIR, CACHE_DIR) features = meta.load_features() - eds_configs = load_eds_files() + eds_configs = load_eds_files(CACHE_DIR) if features.ecss_time: enable_ecss_time(eds_configs) mt = MessageTable(CANOpenParser(eds_configs)) diff --git a/canopen_monitor/parse/__init__.py b/canopen_monitor/parse/__init__.py index 7b93b6f..74a9f7a 100644 --- a/canopen_monitor/parse/__init__.py +++ b/canopen_monitor/parse/__init__.py @@ -2,7 +2,7 @@ for parsing CANOpen messages according to Object Definiton files or Electronic Data Sheet files, provided by the end user. """ -from .eds import EDS, load_eds_file +from .eds import EDS, load_eds_file, load_eds_files from .canopen import CANOpenParser from .utilities import DataType @@ -11,4 +11,5 @@ 'EDS', 'load_eds_file', 'DataType', + 'load_eds_files' ] diff --git a/canopen_monitor/parse/eds.py b/canopen_monitor/parse/eds.py index 30e16a4..d749f91 100644 --- a/canopen_monitor/parse/eds.py +++ b/canopen_monitor/parse/eds.py @@ -1,8 +1,11 @@ from __future__ import annotations + +import copy import string from re import finditer from typing import Union from dateutil.parser import parse as dtparse +import os def camel_to_snake(old_str: str) -> str: @@ -108,12 +111,14 @@ def __init__(self, data, index: Union[str, int], is_sub=False): value = convert_value(value) self.__setattr__(camel_to_snake(key), value) + """ Add a subindex to an index object :param index: The subindex being added :type Index :raise ValueError: A subindex has already been added a this subindex """ + def add(self, index: Index) -> None: if self.sub_indices.setdefault(int(index.index), index) != index: raise ValueError @@ -124,6 +129,7 @@ def add(self, index: Index) -> None: :type Index :raise ValueError: A subindex has already been added a this subindex """ + def __getitem__(self, key: int): if key not in self.sub_indices: raise KeyError(f"{self.index}sub{key}") @@ -149,7 +155,82 @@ def convert_value(value: str) -> Union[int, str]: return value -class EDS: +class OD: + def __init__(self): + self.node_id = None + self.indices = {} + self.device_commissioning = None + # tools section is optional per CiA 306 + self.tools = None + self.file_info = None + self.device_info = None + self.dummy_usage = None + # comments section is optional per CiA 306 + self.comments = None + self.mandatory_objects = None + self.optional_objects = None + self.manufacturer_objects = None + + def extended_pdo_definition(self, offset: int) -> OD: + # TODO: Move to constant with message types + pdo_tx = 0x1A00 + pdo_tx_offset = 0x1A00 + (offset * 4) + pdo_rx = 0x1600 + pdo_rx_offset = 0x1600 + (offset * 4) + node = OD() + node.node_id = copy.deepcopy(self.node_id) + node.device_commissioning = copy.deepcopy(self.device_commissioning) + node.tools = copy.deepcopy(self.tools) + node.file_info = copy.deepcopy(self.file_info) + node.device_info = copy.deepcopy(self.device_info) + node.dummy_usage = copy.deepcopy(self.dummy_usage) + node.comments = copy.deepcopy(self.dummy_usage) + node.mandatory_objects = copy.deepcopy(self.dummy_usage) + node.optional_objects = copy.deepcopy(self.optional_objects) + node.manufacturer_objects = copy.deepcopy(self.manufacturer_objects) + + if (pdo_tx_offset not in self and pdo_rx_offset not in self) or \ + (self[pdo_tx_offset].parameter_name != "TPDO mapping parameter" + and self[pdo_rx_offset].parameter_name != "RPDO mapping parameter"): + + raise KeyError("Extended PDO definitions not found") + + self.get_pdo_offset(node, pdo_tx, pdo_tx_offset) + self.get_pdo_offset(node, pdo_rx, pdo_rx_offset) + + return node + + def get_pdo_offset(self, node: OD, start: int, offset: int): + while offset in self: + node[start] = copy.deepcopy(self[offset]) + start += 1 + offset += 1 + if start % 4 == 0: + break + + def __len__(self) -> int: + return sum(map(lambda x: len(x), self.indices.values())) + + def __getitem__(self, key: Union[int, str]) -> Index: + callable = hex if type(key) == int else str + key = callable(key) + if key not in self.indices: + raise KeyError(key[2:]) + + return self.indices[key] + + def __setitem__(self, key, value): + callable = hex if type(key) == int else str + key = callable(key) + self.indices[key] = value + + def __contains__(self, item): + callable = hex if type(item) == int else str + item = callable(item) + return item in self.indices + + +class EDS(OD): def __init__(self, eds_data: [str]): """Parse the array of EDS lines into a dictionary of Metadata/Index objects. @@ -157,6 +238,7 @@ def __init__(self, eds_data: [str]): :param eds_data: The list of raw lines from the EDS file. :type eds_data: [str] """ + super().__init__() self.indices = {} prev = 0 @@ -184,24 +266,13 @@ def __init__(self, eds_data: [str]): Metadata(section[1:])) prev = i + 1 - if hasattr(self, 'device_commissioning'): + if self.device_commissioning is not None: self.node_id = convert_value(self.device_commissioning.node_id) elif '0x2101' in self.indices.keys(): self.node_id = self['0x2101'].default_value else: self.node_id = None - def __len__(self) -> int: - return sum(map(lambda x: len(x), self.indices.values())) - - def __getitem__(self, key: Union[int, str]) -> Index: - callable = hex if type(key) == int else str - key = callable(key) - if key not in self.indices: - raise KeyError(key[2:]) - - return self.indices[callable(key)] - def load_eds_file(filepath: str) -> EDS: """Read in the EDS file, grab the raw lines, strip them of all escaped @@ -216,3 +287,29 @@ def load_eds_file(filepath: str) -> EDS: """ with open(filepath) as file: return EDS(list(map(lambda x: x.strip(), file.read().split('\n')))) + + +def load_eds_files(filepath: str) -> dict: + """Read a directory of OD files + + :param filepath: Directory to load files from + :type filepath: str + :return: dictionary of OD files with node id as key and OD as value + :rtype: dict + """ + configs = {} + for file in os.listdir(filepath): + full_path = f'{filepath}/{file}' + if file.lower().endswith(".eds") or file.lower().endswith(".dcf"): + config = load_eds_file(full_path) + configs[config.node_id] = config + try: + i = 1 + while True: + extended_node = config.extended_pdo_definition(i) + configs[config.node_id+i] = extended_node + i += 1 + except KeyError: + ... + + return configs diff --git a/tests/__init__.py b/tests/__init__.py index ae1c0d2..80bfc20 100755 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -5718,7 +5718,7 @@ PDOMapping=0 [1600sub1] -ParameterName=Mapping object 1 +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5729,7 +5729,7 @@ PDOMapping=0 [1600sub2] -ParameterName=Mapping object 2 +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5740,7 +5740,7 @@ PDOMapping=0 [1600sub3] -ParameterName=Mapping object 3 +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5751,7 +5751,7 @@ PDOMapping=0 [1600sub4] -ParameterName=Mapping object 4 +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5762,7 +5762,7 @@ PDOMapping=0 [1600sub5] -ParameterName=Mapping object 5 +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5773,7 +5773,7 @@ PDOMapping=0 [1600sub6] -ParameterName=Mapping object 6 +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5784,7 +5784,7 @@ PDOMapping=0 [1600sub7] -ParameterName=Mapping object 7 +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5795,7 +5795,7 @@ PDOMapping=0 [1600sub8] -ParameterName=Mapping object 8 +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5824,7 +5824,7 @@ PDOMapping=0 [1601sub1] -ParameterName=Mapping object 1 +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5835,7 +5835,7 @@ PDOMapping=0 [1601sub2] -ParameterName=Mapping object 2 +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5846,7 +5846,7 @@ PDOMapping=0 [1601sub3] -ParameterName=Mapping object 3 +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5857,7 +5857,7 @@ PDOMapping=0 [1601sub4] -ParameterName=Mapping object 4 +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5868,7 +5868,7 @@ PDOMapping=0 [1601sub5] -ParameterName=Mapping object 5 +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5879,7 +5879,7 @@ PDOMapping=0 [1601sub6] -ParameterName=Mapping object 6 +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5890,7 +5890,7 @@ PDOMapping=0 [1601sub7] -ParameterName=Mapping object 7 +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5901,7 +5901,7 @@ PDOMapping=0 [1601sub8] -ParameterName=Mapping object 8 +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5930,7 +5930,7 @@ PDOMapping=0 [1602sub1] -ParameterName=Mapping object 1 +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5941,7 +5941,7 @@ PDOMapping=0 [1602sub2] -ParameterName=Mapping object 2 +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5952,7 +5952,7 @@ PDOMapping=0 [1602sub3] -ParameterName=Mapping object 3 +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5963,7 +5963,7 @@ PDOMapping=0 [1602sub4] -ParameterName=Mapping object 4 +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5974,7 +5974,7 @@ PDOMapping=0 [1602sub5] -ParameterName=Mapping object 5 +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5985,7 +5985,7 @@ PDOMapping=0 [1602sub6] -ParameterName=Mapping object 6 +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -5996,7 +5996,7 @@ PDOMapping=0 [1602sub7] -ParameterName=Mapping object 7 +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6007,7 +6007,7 @@ PDOMapping=0 [1602sub8] -ParameterName=Mapping object 8 +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6036,7 +6036,7 @@ PDOMapping=0 [1603sub1] -ParameterName=Mapping object 1 +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6047,7 +6047,7 @@ PDOMapping=0 [1603sub2] -ParameterName=Mapping object 2 +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6058,7 +6058,7 @@ PDOMapping=0 [1603sub3] -ParameterName=Mapping object 3 +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6069,7 +6069,7 @@ PDOMapping=0 [1603sub4] -ParameterName=Mapping object 4 +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6080,7 +6080,7 @@ PDOMapping=0 [1603sub5] -ParameterName=Mapping object 5 +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6091,7 +6091,7 @@ PDOMapping=0 [1603sub6] -ParameterName=Mapping object 6 +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6102,7 +6102,7 @@ PDOMapping=0 [1603sub7] -ParameterName=Mapping object 7 +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6113,7 +6113,1173 @@ PDOMapping=0 [1603sub8] -ParameterName=Mapping object 8 +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1604] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1604sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1604sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1604sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1604sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1604sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1604sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1604sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1604sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1604sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1605] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1605sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1605sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1605sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1605sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1605sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1605sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1605sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1605sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1605sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1606] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1606sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1606sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1606sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1606sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1606sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1606sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1606sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1606sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1606sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1607] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1607sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1607sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1607sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1607sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1607sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1607sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1607sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1607sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1607sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1608] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1608sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1608sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1608sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1608sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1608sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1608sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1608sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1608sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1608sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1609] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1609sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1609sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1609sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1609sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1609sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1609sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1609sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1609sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1609sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160A] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[160Asub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[160Asub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Asub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Asub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Asub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Asub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Asub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Asub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Asub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160B] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[160Bsub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[160Bsub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Bsub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Bsub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Bsub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Bsub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Bsub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Bsub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Bsub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160C] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[160Csub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[160Csub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Csub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Csub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Csub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Csub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Csub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Csub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Csub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160D] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[160Dsub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[160Dsub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Dsub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Dsub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Dsub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Dsub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Dsub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Dsub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Dsub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160E] +ParameterName=RPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[160Esub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[160Esub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Esub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Esub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Esub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Esub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Esub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Esub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[160Esub8] +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6128,244 +7294,1512 @@ Denotation= ObjectType=0x9 ;StorageLocation=PERSIST_COMM -SubNumber=0x7 +SubNumber=0x7 + +[1800sub0] +ParameterName=Highest sub-index supported +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=ro +DefaultValue=0x06 +ParameterValue= +PDOMapping=0 + +[1800sub1] +ParameterName=COB-ID used by TPDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0xC0000180+$NODEID +ParameterValue= +PDOMapping=0 + +[1800sub2] +ParameterName=Transmission type +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=254 +ParameterValue= +PDOMapping=0 + +[1800sub3] +ParameterName=Inhibit time +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0006 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1800sub4] +ParameterName=compatibility entry +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=ro +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1800sub5] +ParameterName=Event timer +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0006 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1800sub6] +ParameterName=SYNC start value +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1801] +ParameterName=TPDO communication parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x7 + +[1801sub0] +ParameterName=Highest sub-index supported +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=ro +DefaultValue=0x06 +ParameterValue= +PDOMapping=0 + +[1801sub1] +ParameterName=COB-ID used by TPDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0xC0000280+$NODEID +ParameterValue= +PDOMapping=0 + +[1801sub2] +ParameterName=Transmission type +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=254 +ParameterValue= +PDOMapping=0 + +[1801sub3] +ParameterName=Inhibit time +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0006 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1801sub4] +ParameterName=compatibility entry +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=ro +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1801sub5] +ParameterName=Event timer +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0006 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1801sub6] +ParameterName=SYNC start value +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1802] +ParameterName=TPDO communication parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x7 + +[1802sub0] +ParameterName=Highest sub-index supported +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=ro +DefaultValue=0x06 +ParameterValue= +PDOMapping=0 + +[1802sub1] +ParameterName=COB-ID used by TPDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0xC0000380+$NODEID +ParameterValue= +PDOMapping=0 + +[1802sub2] +ParameterName=Transmission type +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=254 +ParameterValue= +PDOMapping=0 + +[1802sub3] +ParameterName=Inhibit time +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0006 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1802sub4] +ParameterName=compatibility entry +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=ro +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1802sub5] +ParameterName=Event timer +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0006 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1802sub6] +ParameterName=SYNC start value +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1803] +ParameterName=TPDO communication parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x7 + +[1803sub0] +ParameterName=Highest sub-index supported +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=ro +DefaultValue=0x06 +ParameterValue= +PDOMapping=0 + +[1803sub1] +ParameterName=COB-ID used by TPDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0xC0000480+$NODEID +ParameterValue= +PDOMapping=0 + +[1803sub2] +ParameterName=Transmission type +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=254 +ParameterValue= +PDOMapping=0 + +[1803sub3] +ParameterName=Inhibit time +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0006 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1803sub4] +ParameterName=compatibility entry +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=ro +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1803sub5] +ParameterName=Event timer +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0006 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1803sub6] +ParameterName=SYNC start value +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0 +ParameterValue= +PDOMapping=0 + +[1A00] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A00sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0x04 +ParameterValue= +PDOMapping=0 + +[1A00sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000110 +ParameterValue= +PDOMapping=0 + +[1A00sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000210 +ParameterValue= +PDOMapping=0 + +[1A00sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000310 +ParameterValue= +PDOMapping=0 + +[1A00sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000410 +ParameterValue= +PDOMapping=0 + +[1A00sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A00sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A00sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A00sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A01] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A01sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0x03 +ParameterValue= +PDOMapping=0 + +[1A01sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000510 +ParameterValue= +PDOMapping=0 + +[1A01sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000610 +ParameterValue= +PDOMapping=0 + +[1A01sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000710 +ParameterValue= +PDOMapping=0 + +[1A01sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A01sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A01sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A01sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A01sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A02] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A02sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0x04 +ParameterValue= +PDOMapping=0 + +[1A02sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000810 +ParameterValue= +PDOMapping=0 + +[1A02sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000910 +ParameterValue= +PDOMapping=0 + +[1A02sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000A10 +ParameterValue= +PDOMapping=0 + +[1A02sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000B10 +ParameterValue= +PDOMapping=0 + +[1A02sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A02sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A02sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A02sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A03] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A03sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0x04 +ParameterValue= +PDOMapping=0 + +[1A03sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60001210 +ParameterValue= +PDOMapping=0 + +[1A03sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60001310 +ParameterValue= +PDOMapping=0 + +[1A03sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60001410 +ParameterValue= +PDOMapping=0 + +[1A03sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60001510 +ParameterValue= +PDOMapping=0 + +[1A03sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A03sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A03sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A03sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A04] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A04sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0x04 +ParameterValue= +PDOMapping=0 + +[1A04sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000C10 +ParameterValue= +PDOMapping=0 + +[1A04sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60000D10 +ParameterValue= +PDOMapping=0 + +[1A04sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60001108 +ParameterValue= +PDOMapping=0 + +[1A04sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60001608 +ParameterValue= +PDOMapping=0 + +[1A04sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A04sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A04sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A04sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A05] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A05sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0x04 +ParameterValue= +PDOMapping=0 + +[1A05sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010110 +ParameterValue= +PDOMapping=0 + +[1A05sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010210 +ParameterValue= +PDOMapping=0 + +[1A05sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010310 +ParameterValue= +PDOMapping=0 + +[1A05sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010410 +ParameterValue= +PDOMapping=0 + +[1A05sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A05sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A05sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A05sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A06] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A06sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0x03 +ParameterValue= +PDOMapping=0 + +[1A06sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010510 +ParameterValue= +PDOMapping=0 + +[1A06sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010610 +ParameterValue= +PDOMapping=0 + +[1A06sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010710 +ParameterValue= +PDOMapping=0 + +[1A06sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A06sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A06sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A06sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A06sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A07] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A07sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0x04 +ParameterValue= +PDOMapping=0 + +[1A07sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010810 +ParameterValue= +PDOMapping=0 + +[1A07sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010910 +ParameterValue= +PDOMapping=0 + +[1A07sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010A10 +ParameterValue= +PDOMapping=0 + +[1A07sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010B10 +ParameterValue= +PDOMapping=0 + +[1A07sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A07sub6] +ParameterName=Application object 6 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A07sub7] +ParameterName=Application object 7 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A07sub8] +ParameterName=Application object 8 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 + +[1A08] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A08sub0] +ParameterName=Number of mapped application objects in PDO +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0005 +AccessType=rw +DefaultValue=0x04 +ParameterValue= +PDOMapping=0 + +[1A08sub1] +ParameterName=Application object 1 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60011210 +ParameterValue= +PDOMapping=0 + +[1A08sub2] +ParameterName=Application object 2 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60011310 +ParameterValue= +PDOMapping=0 + +[1A08sub3] +ParameterName=Application object 3 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60011410 +ParameterValue= +PDOMapping=0 + +[1A08sub4] +ParameterName=Application object 4 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60011510 +ParameterValue= +PDOMapping=0 + +[1A08sub5] +ParameterName=Application object 5 +Denotation= +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 -[1800sub0] -ParameterName=Highest sub-index supported +[1A08sub6] +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 -AccessType=ro -DefaultValue=0x06 +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1800sub1] -ParameterName=COB-ID used by TPDO +[1A08sub7] +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM DataType=0x0007 AccessType=rw -DefaultValue=0xC0000180+$NODEID +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1800sub2] -ParameterName=Transmission type +[1A08sub8] +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 +DataType=0x0007 AccessType=rw -DefaultValue=254 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1800sub3] -ParameterName=Inhibit time +[1A09] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A09sub0] +ParameterName=Number of mapped application objects in PDO Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0006 +DataType=0x0005 AccessType=rw -DefaultValue=0 +DefaultValue=0x04 ParameterValue= PDOMapping=0 -[1800sub4] -ParameterName=compatibility entry +[1A09sub1] +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 -AccessType=ro -DefaultValue=0 +DataType=0x0007 +AccessType=rw +DefaultValue=0x60010C10 ParameterValue= PDOMapping=0 -[1800sub5] -ParameterName=Event timer +[1A09sub2] +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0006 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x60010D10 ParameterValue= PDOMapping=0 -[1800sub6] -ParameterName=SYNC start value +[1A09sub3] +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x60011108 ParameterValue= PDOMapping=0 -[1801] -ParameterName=TPDO communication parameter +[1A09sub4] +ParameterName=Application object 4 Denotation= -ObjectType=0x9 -;StorageLocation=PERSIST_COMM -SubNumber=0x7 +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x60011608 +ParameterValue= +PDOMapping=0 -[1801sub0] -ParameterName=Highest sub-index supported +[1A09sub5] +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 -AccessType=ro -DefaultValue=0x06 +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1801sub1] -ParameterName=COB-ID used by TPDO +[1A09sub6] +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM DataType=0x0007 AccessType=rw -DefaultValue=0xC0000280+$NODEID +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1801sub2] -ParameterName=Transmission type +[1A09sub7] +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 +DataType=0x0007 AccessType=rw -DefaultValue=254 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1801sub3] -ParameterName=Inhibit time +[1A09sub8] +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0006 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1801sub4] -ParameterName=compatibility entry +[1A0A] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A0Asub0] +ParameterName=Number of mapped application objects in PDO Denotation= ObjectType=0x7 ;StorageLocation=RAM DataType=0x0005 -AccessType=ro +AccessType=rw DefaultValue=0 ParameterValue= PDOMapping=0 -[1801sub5] -ParameterName=Event timer +[1A0Asub1] +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0006 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1801sub6] -ParameterName=SYNC start value +[1A0Asub2] +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1802] -ParameterName=TPDO communication parameter -Denotation= -ObjectType=0x9 -;StorageLocation=PERSIST_COMM -SubNumber=0x7 - -[1802sub0] -ParameterName=Highest sub-index supported +[1A0Asub3] +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 -AccessType=ro -DefaultValue=0x06 +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1802sub1] -ParameterName=COB-ID used by TPDO +[1A0Asub4] +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM DataType=0x0007 AccessType=rw -DefaultValue=0xC0000380+$NODEID +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1802sub2] -ParameterName=Transmission type +[1A0Asub5] +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 +DataType=0x0007 AccessType=rw -DefaultValue=254 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1802sub3] -ParameterName=Inhibit time +[1A0Asub6] +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0006 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1802sub4] -ParameterName=compatibility entry +[1A0Asub7] +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 -AccessType=ro -DefaultValue=0 +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1802sub5] -ParameterName=Event timer +[1A0Asub8] +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0006 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1802sub6] -ParameterName=SYNC start value +[1A0B] +ParameterName=TPDO mapping parameter +Denotation= +ObjectType=0x9 +;StorageLocation=PERSIST_COMM +SubNumber=0x9 + +[1A0Bsub0] +ParameterName=Number of mapped application objects in PDO Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6375,98 +8809,102 @@ ParameterValue= PDOMapping=0 -[1803] -ParameterName=TPDO communication parameter +[1A0Bsub1] +ParameterName=Application object 1 Denotation= -ObjectType=0x9 -;StorageLocation=PERSIST_COMM -SubNumber=0x7 +ObjectType=0x7 +;StorageLocation=RAM +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 +ParameterValue= +PDOMapping=0 -[1803sub0] -ParameterName=Highest sub-index supported +[1A0Bsub2] +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 -AccessType=ro -DefaultValue=0x06 +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1803sub1] -ParameterName=COB-ID used by TPDO +[1A0Bsub3] +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM DataType=0x0007 AccessType=rw -DefaultValue=0xC0000480+$NODEID +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1803sub2] -ParameterName=Transmission type +[1A0Bsub4] +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 +DataType=0x0007 AccessType=rw -DefaultValue=254 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1803sub3] -ParameterName=Inhibit time +[1A0Bsub5] +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0006 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1803sub4] -ParameterName=compatibility entry +[1A0Bsub6] +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 -AccessType=ro -DefaultValue=0 +DataType=0x0007 +AccessType=rw +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1803sub5] -ParameterName=Event timer +[1A0Bsub7] +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0006 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1803sub6] -ParameterName=SYNC start value +[1A0Bsub8] +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM -DataType=0x0005 +DataType=0x0007 AccessType=rw -DefaultValue=0 +DefaultValue=0x00000000 ParameterValue= PDOMapping=0 -[1A00] +[1A0C] ParameterName=TPDO mapping parameter Denotation= ObjectType=0x9 ;StorageLocation=PERSIST_COMM SubNumber=0x9 -[1A00sub0] +[1A0Csub0] ParameterName=Number of mapped application objects in PDO Denotation= ObjectType=0x7 @@ -6477,8 +8915,8 @@ ParameterValue= PDOMapping=0 -[1A00sub1] -ParameterName=Mapping object 1 +[1A0Csub1] +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6488,8 +8926,8 @@ ParameterValue= PDOMapping=0 -[1A00sub2] -ParameterName=Mapping object 2 +[1A0Csub2] +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6499,8 +8937,8 @@ ParameterValue= PDOMapping=0 -[1A00sub3] -ParameterName=Mapping object 3 +[1A0Csub3] +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6510,8 +8948,8 @@ ParameterValue= PDOMapping=0 -[1A00sub4] -ParameterName=Mapping object 4 +[1A0Csub4] +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6521,8 +8959,8 @@ ParameterValue= PDOMapping=0 -[1A00sub5] -ParameterName=Mapping object 5 +[1A0Csub5] +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6532,8 +8970,8 @@ ParameterValue= PDOMapping=0 -[1A00sub6] -ParameterName=Mapping object 6 +[1A0Csub6] +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6543,8 +8981,8 @@ ParameterValue= PDOMapping=0 -[1A00sub7] -ParameterName=Mapping object 7 +[1A0Csub7] +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6554,8 +8992,8 @@ ParameterValue= PDOMapping=0 -[1A00sub8] -ParameterName=Mapping object 8 +[1A0Csub8] +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6565,14 +9003,14 @@ ParameterValue= PDOMapping=0 -[1A01] +[1A0D] ParameterName=TPDO mapping parameter Denotation= ObjectType=0x9 ;StorageLocation=PERSIST_COMM SubNumber=0x9 -[1A01sub0] +[1A0Dsub0] ParameterName=Number of mapped application objects in PDO Denotation= ObjectType=0x7 @@ -6583,8 +9021,8 @@ ParameterValue= PDOMapping=0 -[1A01sub1] -ParameterName=Mapping object 1 +[1A0Dsub1] +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6594,8 +9032,8 @@ ParameterValue= PDOMapping=0 -[1A01sub2] -ParameterName=Mapping object 2 +[1A0Dsub2] +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6605,8 +9043,8 @@ ParameterValue= PDOMapping=0 -[1A01sub3] -ParameterName=Mapping object 3 +[1A0Dsub3] +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6616,8 +9054,8 @@ ParameterValue= PDOMapping=0 -[1A01sub4] -ParameterName=Mapping object 4 +[1A0Dsub4] +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6627,8 +9065,8 @@ ParameterValue= PDOMapping=0 -[1A01sub5] -ParameterName=Mapping object 5 +[1A0Dsub5] +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6638,8 +9076,8 @@ ParameterValue= PDOMapping=0 -[1A01sub6] -ParameterName=Mapping object 6 +[1A0Dsub6] +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6649,8 +9087,8 @@ ParameterValue= PDOMapping=0 -[1A01sub7] -ParameterName=Mapping object 7 +[1A0Dsub7] +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6660,8 +9098,8 @@ ParameterValue= PDOMapping=0 -[1A01sub8] -ParameterName=Mapping object 8 +[1A0Dsub8] +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6671,14 +9109,14 @@ ParameterValue= PDOMapping=0 -[1A02] +[1A0E] ParameterName=TPDO mapping parameter Denotation= ObjectType=0x9 ;StorageLocation=PERSIST_COMM SubNumber=0x9 -[1A02sub0] +[1A0Esub0] ParameterName=Number of mapped application objects in PDO Denotation= ObjectType=0x7 @@ -6689,8 +9127,8 @@ ParameterValue= PDOMapping=0 -[1A02sub1] -ParameterName=Mapping object 1 +[1A0Esub1] +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6700,8 +9138,8 @@ ParameterValue= PDOMapping=0 -[1A02sub2] -ParameterName=Mapping object 2 +[1A0Esub2] +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6711,8 +9149,8 @@ ParameterValue= PDOMapping=0 -[1A02sub3] -ParameterName=Mapping object 3 +[1A0Esub3] +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6722,8 +9160,8 @@ ParameterValue= PDOMapping=0 -[1A02sub4] -ParameterName=Mapping object 4 +[1A0Esub4] +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6733,8 +9171,8 @@ ParameterValue= PDOMapping=0 -[1A02sub5] -ParameterName=Mapping object 5 +[1A0Esub5] +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6744,8 +9182,8 @@ ParameterValue= PDOMapping=0 -[1A02sub6] -ParameterName=Mapping object 6 +[1A0Esub6] +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6755,8 +9193,8 @@ ParameterValue= PDOMapping=0 -[1A02sub7] -ParameterName=Mapping object 7 +[1A0Esub7] +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6766,8 +9204,8 @@ ParameterValue= PDOMapping=0 -[1A02sub8] -ParameterName=Mapping object 8 +[1A0Esub8] +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6777,14 +9215,14 @@ ParameterValue= PDOMapping=0 -[1A03] +[1A0F] ParameterName=TPDO mapping parameter Denotation= ObjectType=0x9 ;StorageLocation=PERSIST_COMM SubNumber=0x9 -[1A03sub0] +[1A0Fsub0] ParameterName=Number of mapped application objects in PDO Denotation= ObjectType=0x7 @@ -6795,8 +9233,8 @@ ParameterValue= PDOMapping=0 -[1A03sub1] -ParameterName=Mapping object 1 +[1A0Fsub1] +ParameterName=Application object 1 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6806,8 +9244,8 @@ ParameterValue= PDOMapping=0 -[1A03sub2] -ParameterName=Mapping object 2 +[1A0Fsub2] +ParameterName=Application object 2 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6817,8 +9255,8 @@ ParameterValue= PDOMapping=0 -[1A03sub3] -ParameterName=Mapping object 3 +[1A0Fsub3] +ParameterName=Application object 3 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6828,8 +9266,8 @@ ParameterValue= PDOMapping=0 -[1A03sub4] -ParameterName=Mapping object 4 +[1A0Fsub4] +ParameterName=Application object 4 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6839,8 +9277,8 @@ ParameterValue= PDOMapping=0 -[1A03sub5] -ParameterName=Mapping object 5 +[1A0Fsub5] +ParameterName=Application object 5 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6850,8 +9288,8 @@ ParameterValue= PDOMapping=0 -[1A03sub6] -ParameterName=Mapping object 6 +[1A0Fsub6] +ParameterName=Application object 6 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6861,8 +9299,8 @@ ParameterValue= PDOMapping=0 -[1A03sub7] -ParameterName=Mapping object 7 +[1A0Fsub7] +ParameterName=Application object 7 Denotation= ObjectType=0x7 ;StorageLocation=RAM @@ -6872,8 +9310,8 @@ ParameterValue= PDOMapping=0 -[1A03sub8] -ParameterName=Mapping object 8 +[1A0Fsub8] +ParameterName=Application object 8 Denotation= ObjectType=0x7 ;StorageLocation=RAM diff --git a/tests/spec_eds_parser.py b/tests/spec_eds_parser.py index b5b67c5..9573dc6 100644 --- a/tests/spec_eds_parser.py +++ b/tests/spec_eds_parser.py @@ -1,6 +1,6 @@ import unittest from canopen_monitor import parse -from unittest.mock import mock_open, patch +from unittest.mock import mock_open, patch, MagicMock from tests import TEST_EDS, TEST_DCF eds = parse.eds @@ -76,7 +76,7 @@ def test_last_index(self): """ file_check = TEST_EDS.splitlines() self.assertEqual("PDOMapping=0", - file_check[len(file_check)-1], + file_check[len(file_check) - 1], "The last line in the EDS test file should not be " "blank") @@ -159,3 +159,103 @@ def test_invalid_subindex_when_no_subindices(self): self.assertEqual("'1000sub1'", str(context.exception)) + +class TestExtendedPDODefinition(unittest.TestCase): + def setUp(self): + # node id defined in file + self.node_id = 0x10 + with patch('builtins.open', mock_open(read_data=TEST_DCF)) as _: + with patch('os.listdir') as mocked_listdir: + mocked_listdir.return_value = ["battery.dcf"] + self.nodes = eds.load_eds_files("/") + + def test_load_PDOs(self): + + od = self.nodes.get(self.node_id) + # RPDO 1 + self.assertEqual("RPDO mapping parameter", + od[hex(0x1600)].parameter_name, + "Base RPDO 1 definition not found") + + # RPDO 2 + self.assertEqual("RPDO mapping parameter", + od[hex(0x1601)].parameter_name, + "Base RPDO 2 definition not found") + + # RPDO 3 + self.assertEqual("RPDO mapping parameter", + od[hex(0x1602)].parameter_name, + "Base RPDO 3 definition not found") + # RPDO 4 + self.assertEqual("RPDO mapping parameter", + od[hex(0x1603)].parameter_name, + "Base RPDO 4 definition not found") + + # TPDO 1 + self.assertEqual("TPDO mapping parameter", + od[hex(0x1A00)].parameter_name, + "Base TPDO 1 definition not found") + + # TPDO 2 + self.assertEqual("TPDO mapping parameter", + od[hex(0x1A01)].parameter_name, + "Base TPDO 2 definition not found") + + # TPDO 3 + self.assertEqual("TPDO mapping parameter", + od[hex(0x1A02)].parameter_name, + "Base TPDO 3 definition not found") + # TPDO 4 + self.assertEqual("TPDO mapping parameter", + od[hex(0x1A03)].parameter_name, + "Base TPDO 4 definition not found") + + def test_load_Extended_PDOs(self): + od = self.nodes.get(self.node_id + 1) + + self.assertIsNotNone(od, "Extended PDO node not set") + + # RPDO 1 + self.assertEqual("RPDO mapping parameter", + od[0x1600].parameter_name, + "Extended RPDO 1 definition not found") + + # RPDO 2 + self.assertEqual("RPDO mapping parameter", + od[0x1601].parameter_name, + "Extended RPDO 2 definition not found") + + # RPDO 3 + self.assertEqual("RPDO mapping parameter", + od[0x1602].parameter_name, + "Extended RPDO 3 definition not found") + # RPDO 4 + self.assertEqual("RPDO mapping parameter", + od[0x1603].parameter_name, + "Extended RPDO 4 definition not found") + + # TPDO 1 + self.assertEqual("TPDO mapping parameter", + od[0x1A00].parameter_name, + "Extended TPDO 1 definition not found") + + # TPDO 2 + self.assertEqual("TPDO mapping parameter", + od[0x1A01].parameter_name, + "Extended TPDO 2 definition not found") + + # TPDO 3 + self.assertEqual("TPDO mapping parameter", + od[0x1A02].parameter_name, + "Extended TPDO 3 definition not found") + # TPDO 4 + self.assertEqual("TPDO mapping parameter", + od[0x1A03].parameter_name, + "Extended TPDO 4 definition not found") + + def test_load_invalid_node(self): + od = self.nodes.get(self.node_id + 5) + with self.assertRaises(TypeError) as context: + result = od[hex(0x1600)].parameter_name + + self.assertEqual("'NoneType' object is not subscriptable", str(context.exception))