Trees | Indices | Help |
---|
|
-- The ckbot.dynamixel python module implements classes that communicate with CKBot nodes connected to a ( Robotis ) Dynamixel Half-Duplex RS485 Bus, as per Robotis documentation Current protocol documentation is found at: http://support.robotis.com/en/product/actuator/dynamixel/dxl_communication.htm This library was written referring to the EX-106 manual v1.12 which Robotis no longer makes available from its website. -- ckbot.dynamixel utilizes Bus and Protocol classes as an interface between the dynamixel hardware and protocol communication layers ... talk about meminterface, pna, and module classes ... -- Typical usage via ckbot.logical python module: >>> from ckbot import logical, dynamixel >>> nodes = {0x01:'head', 0x06:'mid', 0x03:'tail'} >>> c = logical.Cluster( dynamixel.Protocol(nodes = nodes.keys()) ) >>> c.populate( names=nodes, required=nodes.keys() ) >>> c.at.head.set_pos(1000) -- Subclass/extend?? -- CKbot.dynamixel depends upon the following: - ckbot.ckmodule - Module - AbstractBus - AbstractNodeAdaptor - AbstractProtocol - AbstractServoModule - progress - ckbot.port2port - newConnection
|
|||
DynamixelServoError | |||
Dynamixel DESCRIPTION: -- The Dynamixel class is a namespace containing useful constants and functions RESPONSIBILITIES: -- Serve as a utility class with dynamixel commands and useful functions OWNERSHIP: -- owned by the dynamixel module THEORY: -- none CONSTRAINTS: -- none ... |
|||
DynamixelMemMap DESCRIPTION: Abstract superclass of all DynamixelMemMap classes. |
|||
MemMapOpsMixin Mixin class providing utility functions for operating on a MemMap. |
|||
MX64Mem DESCRIPTION: -- The MX64Mem class provides a mapping of the dynamixel control table: as per the MX-64 manual pp. |
|||
MX28Mem DESCRIPTION: ... |
|||
RX64Mem DESCRIPTION: -- The RX64Mem class provides a mapping of the dynamixel control table: as per the RX-64 manual pp. |
|||
EX106Mem DESCRIPTION: -- The EX106Mem class provides a mapping of the dynamixel control table: as per EX-106 section 3-4 pp. |
|||
DynamixelMemWithOps | |||
EX106MemWithOps | |||
RX64MemWithOps | |||
MX64MemWithOps | |||
MX28MemWithOps | |||
AX12MemWithOps -- The AX-12 control table in... |
|||
Bus ( concrete ) DESCRIPTION: -- The Bus class serves as an interface between the dynamixel RS485 bus and Protocol RESPONSIBILITIES: -- intialize a serial newConnection at the desired baudrate. |
|||
ProtocolError | |||
ProtocolNodeAdaptor | |||
Request ( internal concrete ) DESCRIPTION: -- The Request message class represents holds information about a message request RESPONSIBILITIES: -- hold nid, cmd, and params of message -- keep track of retries remaining -- hold a timestamp -- hold a promise to be updated after dynamixel.Protocol.update() OWNERSHIP: -- owned by the dynamixel module THEORY: -- An Request object serves a way to keep track of requests. |
|||
Protocol ( concrete ) DESCRIPTION: -- The Protocol class provides the functionality needed to send messages using the Dynamixel Protocol as per section 3 of the EX-106 document RESPONSIBILITIES: -- detect modules on the bus and generate NodeAdaptors for each one -- ping modules periodically to ensure that they are still on the Bus?? -- store a queue of pending messages and handle them for during each update for a given timeslice -- act as a abstraction layer for basic Bus functionality? OWNERSHIP: -- owned by the Cluster THEORY: -- The protocol owns a dictionary of the NodeAdaptor of each module It initially checks for modules by performing a scan for all nodes that the user states should be on the Bus and for each module that exists it updates the heartbeat dictionary entry for that node |
|||
DynamixelModule concrete class DynamixelModule provides shared capabilities of Dynamixel modules. |
|||
MX64Module DESCRIPTION: -- MX64 Specific constants RESPONSIBILITIES: -- ... |
|||
MX28Module DESCRIPTION: -- MX28 Specific constants |
|||
EX106Module DESCRIPTION: -- EX106 Specific constants RESPONSIBILITIES: -- ... |
|||
AX12Module DESCRIPTION: -- AX12 Specific constants RESPONSIBILITIES: -- ... |
|||
RX64Module DESCRIPTION: -- RX64 Specific constants RESPONSIBILITIES: -- ... |
|||
MissingDynamixel |
|
|||
|
|
|||
DEFAULT_PORT = dict(TYPE= 'tty', baudrate= 115200, timeout= 0.01)
|
|||
DEBUG = []
|
|||
MODELS = {'Dynamixel-006b':(EX106MemWithOps, EX106Module), 'Dy
|
|
MODELS
|
Trees | Indices | Help |
---|
Generated by Epydoc 3.0.1 on Thu Jan 4 16:46:17 2018 | http://epydoc.sourceforge.net |