Dictionary
- class ingenialink.dictionary.Dictionary(dictionary_path: str, interface: Interface)[source]
Ingenia dictionary Abstract Base Class.
- Parameters:
dictionary_path – Dictionary file path.
interface – communication interface.
- Raises:
ILDictionaryParseError – If the dictionary could not be created.
- child_registers(uid: str, subnode: int) List[Register][source]
Return group registers by an UID
- Parameters:
uid – registers group UID
subnode – registers group subnode
- Returns:
All registers in the group
- Raises:
KeyError – Registers group does not exist
- get_safety_rpdo(uid: str) DictionarySafetyPDO[source]
Get Safe RPDO by uid
- Parameters:
uid – Safe RPDO uid
- Returns:
PDO object description
- Raises:
NotImplementedError – Device is not safe
KeyError – Safe RPDO not exist
- get_safety_tpdo(uid: str) DictionarySafetyPDO[source]
Get Safe TPDO by uid
- Parameters:
uid – Safe TPDO uid
- Returns:
PDO object description
- Raises:
NotImplementedError – Device is not safe
KeyError – Safe TPDO not exist
- abstract read_dictionary() None[source]
Reads the dictionary file and initializes all its components.
- registers(subnode: int) Dict[str, Register][source]
Gets the register dictionary to the targeted subnode.
- Parameters:
subnode – Identifier for the subnode.
- Returns:
Dictionary of all the registers for a subnode.
- categories: DictionaryCategories
Instance of all the categories in the dictionary.
- errors: DictionaryErrors
Instance of all the errors in the dictionary.
- firmware_version: str | None
Firmware version declared in the dictionary.
- image: str | None = None
Drive’s encoded image.
- property is_coco_dictionary: bool
Check if dictionary is a CoCo dictionary
- Returns:
True if the dictionary is a CoCo dictionary. False otherwise.
- is_safe: bool = False
True if has SafetyPDOs element, else False
- part_number: str | None
Part number declared in the dictionary.
- path
Path of the dictionary.
- product_code: int
Product code declared in the dictionary.
- revision_number: int
Revision number declared in the dictionary.
- safety_rpdos: Dict[str, DictionarySafetyPDO]
Safety RPDOs by UID
- safety_tpdos: Dict[str, DictionarySafetyPDO]
Safety TPDOs by UID
- subnodes: Dict[int, SubnodeType]
Number of subnodes in the dictionary.
- version: str
Version of the dictionary.
- class ingenialink.dictionary.DictionaryCategories(list_xdf_categories: List[Element])[source]
Contains all categories from a Dictionary.
- Parameters:
list_xdf_categories – List of Elements from xdf file
- labels(cat_id: str) Dict[str, str][source]
Obtain labels for a certain category ID.
Args: cat_id: Category ID
- Returns:
Labels dictionary.
- property category_ids: List[str]
Category IDs.
- class ingenialink.dictionary.DictionaryErrors(list_xdf_errors: List[Element])[source]
Errors for the dictionary.
- Parameters:
list_xdf_errors – List of Elements from xdf file
- property errors: Dict[int, List[str | None]]
Get the errors dictionary.
- Returns:
Errors dictionary.
- class ingenialink.dictionary.DictionarySafetyPDO(index: int, entries: List[PDORegister])[source]
Safety PDOs dictionary descriptor
- class PDORegister(register: CanopenRegister | None, size: int)[source]
PDO register descriptor