1: 2015-11-24 (Tue) 23:17:34 takaboo source
Line 1: Line 1:
 +TITLE:DXMIOマニュアル
 +#norelated
 +#contents
 +[[BTE088 ショップページへ>http://www.besttechnology.co.jp/modules​/onlineshop/index.php?fct=photo&p=167]]~​
 +[[BTE089 ショップページへ>http://www.besttechnology.co.jp/modules​/onlineshop/index.php?fct=photo&p=168]]
 +**DXMIOの特徴 [#FEATURE]
 +-Dynamixel互換I/F及び通信プロトコル装備
 +-デジタル入出力・アナログ電圧計測・PWM出力・パルス数カウンタ・パルス幅計測をサポート
 +-任意のプログラムを組み込む事により、デフォルトで搭載した機能以上の処理を実現可能
 +-超小型
 +
 +**概要 [#ebd26e62]
 +DXMIOは[[NXP社>http://www.jp.nxp.com]]製LPC824(cortex-M0+コア)を搭載し、Dynamixel互換I/Fを装備した汎用マイコンボードです。~
 +Dynamixelで構成された装置にセンサを追加装備する場合、DXMIOを中継することで同一のネットワークにフィードバック系を設けることができます。~
 +これらの基本機能はサンプルプログラムとして提供されますが、サンプルとして提供される機能では不十分な場合は独自にプログラムを追加することで機能を拡張する事ができます。
 +
 +**基本仕様 [#x1141bd0]
 +|商品番号  |>|BTE088/BTE089 |
 +|CPU |>|LPC824M201JHI33E |
 +|PCBリビジョン |>|E097 (4層) |
 +|通信機能 |>|TTL(半二重)/RS485(半二重)|
 +|動作温度 |>|0~+50℃ |
 +|動作電圧 |>|DC6~35V |
 +|消費電流 |>|最大35mA |
 +|電源出力|>|DC5V 最大250mA |
 +|アナログ入力|入力電圧範囲|0~3.3V|
 +|~|入力インピーダンス|0.1MΩ|
 +|デジタル入出力|デジタル入力Lowレベル検出電圧範囲|-0.5~1.5V|
 +|~|デジタル入力Highレベル検出電圧範囲|1.5~5.5V|
 +|~|シンク・ソース電流|最大40mA|
 +|~|デジタル出力High電圧|2.9~3.3V|
 +|~|デジタル出力Low電圧|0~0.4V|
 +|寸法 |>|約15×26mm |
 +|コネクタ等 |>|14ピンランド, RS485もしくはTTL×1, モニタLED |
 +|付属品 |>| |
 +|環境配慮 |>|RoHS準拠, 鉛フリー半田 |
 +
 +***外観 [#i016df04]
 +| top | bottom |h
 +| #ref(E097_TOP.png,50%) | #ref(E097_BTM.png,50%) |
 +| [[3D pdf>http://www.besttechnology.co.jp/down​load/3D/E097_3D.pdf]] |<|
 +
 +***回路図 [#ba402fe4]
 +#ref(E097_SCH.pdf)
 +
 +***配置・外形 [#w5ebb2b0]
 +#ref(E097_LAYOUT.pdf)
 +
 +***コネクタ・端子・スイッチ等 [#d1e98c39]
 +****CN1 [#tf8c1e95]
 +#ref(E097_CN1.png)
 +-2.54mmピッチ14ピン
 +-ランド穴径 0.9mm
 +-1pin(GND),2pin(5.0V)端子間から外部へDC5Vの電源供給可。
 +-端子名
 +| No. | 端子名称 | No. | 端子名称 |h
 +| 1 | GND | 14 | GPIO5 |
 +| 2 | 5.0V | 13 | GPIO6 |
 +| 3 | GPIO4 | 12 | GPIO7 |
 +| 4 | GPIO3 | 11 | GPIO8 |
 +| 5 | GPIO2 | 10 | GPIO9 |
 +| 6 | GPIO1 | 9 | GPIO10 |
 +| 7 | GPIO0 | 8 | GPIO11 |
 +
 +****CN2 [#m4cf2892]
 +-1.27mmピッチ5ピンランド
 +-SWD用
 +| No. | 端子名称 |h
 +| 1 | 3.3V |
 +| 2 | GND |
 +| 3 | SWDIO |
 +| 4 | SWCLK |
 +| 5 | RESET |
 +
 +****CN3 [#j8574659]
 +*****BTE088 [#z082a4b3]
 +-[[MOLEX 22-03-5035>http://www.molex.com/molex/pr​oducts/datasheet.jsp?part=active/0022035​035_PCB_HEADERS.xml&channel=Products&Lan​g=ja-JP&lang=ja-JP]]
 +-TTL I/Fを搭載したDynamixelシリーズ互換
 +-TTL I/Fと電源は以下の端子に接続
 +#ref(TTL_connector.png)
 +
 +*****BTE089 [#n4eec48b]
 +-[[MOLEX 22-03-5045>http://www.molex.com/molex/pr​oducts/datasheet.jsp?part=active/0022035​045_PCB_HEADERS.xml&channel=Products&Lan​g=ja-jp]]
 +-RS485 I/Fを搭載したDynamixelシリーズ互換
 +-RS485 I/Fと電源は以下の端子に接続
 +#ref(RS485_connector.png)
 +
 +****LED1 [#cd58e257]
 +-LED
 +-色:緑
 +-コントロールテーブルの値に応じて明滅
 +
 +****JP1 [#a0ee7cbe]
 +-BTE088: 1-2短絡
 +-BTE089: 2-3短絡
 +
 +**各機能の詳細 [#te2669af]
 +***Dynamixelクライアント機能 [#gbd36d66]
 +Dynamixelクライアント用のファームウェアを書き込むことにより、スマートアクチュエータと同様に別途用意されたホストから送信されるパケットに応答します。~
 +#ref(E097_ClientImage.png)
 +
 +ホストとの通信処理や標準計測処理は予め標準ライブラリとして提供され、その範疇であればサンプルプログラムをコンパイルして書き込めば実現されます。
 +
 +また、標準計測処理では対応仕切れない外部機器(例えばI2CやSPIといったシリアル通信を必要とするデバイス等)を扱う場合は、別途それらと通信を行いコントロールテーブルへ反映させるタスクを別途生成する事で対応できます。
 +
 +****通信プロトコル [#xd55d8ad]
 +Dynamixelシリーズと共通の通信プロトコルを装備していますので、詳細は[[Dynamixel通信プロトコル]]ページに紹介します。
 +
 +****コントロールテーブル [#ld4f467a]
 +専用の通信プロトコルを用いて本製品の内部情報を読み書きします。~
 +Dynamixelシリーズ共通する情報はコントロールテーブル上の先頭の5バイトのみで、それ以外のアドレスには互換性はありません。
 +|=''Address''|=''Item''|=''Access''|=''I​nitial Value''|=''Range''|h
 +|CENTER:|LEFT:|CENTER:|CENTER:|CENTER:|c​
 +|0 (0x0)|BGCOLOR(silver):[[Model Number>#n4d55da8]]|R|16416 (0x4020)|-|
 +|1 (0x1)|~|~|~|~|
 +|2 (0x2)|BGCOLOR(silver):[[Version of Firmware>#s44e01a9]]|R|?|-|
 +|3 (0x3)|BGCOLOR(lightgrey):[[ID>#cf9c14f9]​]|R/W|200 (0x64)|0~253|
 +|4 (0x4)|BGCOLOR(lightgrey):[[Baudrate>#y98​35609]]|R/W|1 (0x01)|0~254|
 +|5 (0x5)|[[WriteNVM>#iee6d02c]]|R/W|0 (0x00)|0~1|
 +|6 (0x6)|[[LED>#db0623c9]]|R/W|0 (0x00)|0~1|
 +|7 (0x7)|BGCOLOR(lightgrey):[[Pin Config 0>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|8 (0x8)|BGCOLOR(lightgrey):[[Pin Config 1>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|9 (0x9)|BGCOLOR(lightgrey):[[Pin Config 2>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|10 (0xA)|BGCOLOR(lightgrey):[[Pin Config 3>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|11 (0xB)|BGCOLOR(lightgrey):[[Pin Config 4>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|12 (0xC)|BGCOLOR(lightgrey):[[Pin Config 5>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|13 (0xD)|BGCOLOR(lightgrey):[[Pin Config 6>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|14 (0xE)|BGCOLOR(lightgrey):[[Pin Config 7>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|15 (0xF)|BGCOLOR(lightgrey):[[Pin Config 8>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|16 (0x10)|BGCOLOR(lightgrey):[[Pin Config 9>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|17 (0x11)|BGCOLOR(lightgrey):[[Pin Config 10>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|18 (0x12)|BGCOLOR(lightgrey):[[Pin Config 11>#xbae87b5]]|R/W|0 (0x00)|0~20|
 +|19 (0x13)|BGCOLOR(lightgrey):[[Base Clock>#gc9bef4b]]|R/W|0 (0x00)|0~10|
 +|20 (0x14)|[[PWM Cycle 0>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|21 (0x15)|^|^|^|^|
 +|22 (0x16)|[[PWM Duty 0>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|23 (0x17)|^|^|^|^|
 +|24 (0x18)|[[PWM Cycle 1>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|25 (0x19)|^|^|^|^|
 +|26 (0x20)|[[PWM Duty 1>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|27 (0x21)|^|^|^|^|
 +|28 (0x22)|[[PWM Cycle 2>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|29 (0x23)|^|^|^|^|
 +|30 (0x24)|[[PWM Duty 2>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|31 (0x25)|^|^|^|^|
 +|32 (0x26)|[[PWM Cycle 3>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|33 (0x27)|^|^|^|^|
 +|34 (0x28)|[[PWM Duty 3>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|35 (0x29)|^|^|^|^|
 +|36 (0x2A)|[[PWM Cycle 4>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|37 (0x2B)|^|^|^|^|
 +|38 (0x2C)|[[PWM Duty 4>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|39 (0x2D)|^|^|^|^|
 +|40 (0x2E)|[[PWM Cycle 5>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|41 (0x2F)|^|^|^|^|
 +|42 (0x30)|[[PWM Duty 5>#x543dc01]]|R/W|0 (0x0000)|0~65535|
 +|43 (0x31)|^|^|^|^|
 +|44 (0x32)|[[Capture 0>#v88310ce]]|R/W|0 (0x0000)|0~65535|
 +|45 (0x33)|^|^|^|^|
 +|46 (0x34)|[[Capture 1>#v88310ce]]|R/W|0 (0x0000)|0~65535|
 +|47 (0x35)|^|^|^|^|
 +|48 (0x36)|[[Capture 2>#v88310ce]]|R/W|0 (0x0000)|0~65535|
 +|49 (0x37)|^|^|^|^|
 +|50 (0x38)|[[Capture 3>#v88310ce]]|R/W|0 (0x0000)|0~65535|
 +|51 (0x39)|^|^|^|^|
 +|52 (0x34)|[[OUT>#]]|R/W|0 (0x0000)|0~4095|
 +|53 (0x35)|^|^|^|^|
 +|54 (0x36)|BGCOLOR(lightcyan):[[IN>#]]|R|-|0​~4095|
 +|55 (0x37)|^|^|^|^|
 +|56 (0x38)|BGCOLOR(lightcyan):[[ADV 0>#a489271c]]|R|-|0~4095|
 +|57 (0x39)|^|^|^|^|
 +|58 (0x38)|BGCOLOR(lightcyan):[[ADV 1>#a489271c]]|R|-|0~4095|
 +|59 (0x39)|^|^|^|^|
 +|60 (0x38)|BGCOLOR(lightcyan):[[ADV 2>#a489271c]]|R|-|0~4095|
 +|61 (0x39)|^|^|^|^|
 +|62 (0x38)|BGCOLOR(lightcyan):[[ADV 3>#a489271c]]|R|-|0~4095|
 +|63 (0x39)|^|^|^|^|
 +|64 (0x40)|BGCOLOR(lightcyan):[[ADV 4>#a489271c]]|R|-|0~4095|
 +|65 (0x41)|^|^|^|^|
 +|66 (0x42)|BGCOLOR(lightcyan):[[ADV 5>#a489271c]]|R|-|0~4095|
 +|67 (0x43)|^|^|^|^|
 +|68 (0x44)|BGCOLOR(lightcyan):[[ADV 6>#a489271c]]|R|-|0~4095|
 +|69 (0x45)|^|^|^|^|
 +|70 (0x46)|BGCOLOR(lightcyan):[[ADV 7>#a489271c]]|R|-|0~4095|
 +|71 (0x47)|^|^|^|^|
 +|72 (0x48)|BGCOLOR(lightcyan):[[ADV 8>#a489271c]]|R|-|0~4095|
 +|73 (0x49)|^|^|^|^|
 +|74 (0x4A)|BGCOLOR(lightcyan):[[ADV 9>#a489271c]]|R|-|0~4095|
 +|75 (0x4B)|^|^|^|^|
 +|76 (0x4C)|BGCOLOR(lightcyan):[[ADV 10>#a489271c]]|R|-|0~4095|
 +|77 (0x4D)|^|^|^|^|
 +|78 (0x4E)|BGCOLOR(lightcyan):[[ADV 11>#a489271c]]|R|-|0~4095|
 +|79 (0x4F)|^|^|^|^|
 +|80 (0x50)|[[USER 0>#]]|R/W|0|0~255|
 +|81 (0x51)|[[USER 1>#]]|R/W|0|0~255|
 +|82 (0x52)|[[USER 2>#]]|R/W|0|0~255|
 +|83 (0x53)|[[USER 3>#]]|R/W|0|0~255|
 +|84 (0x54)|[[USER 4>#]]|R/W|0|0~255|
 +|85 (0x55)|[[USER 5>#]]|R/W|0|0~255|
 +|86 (0x56)|[[USER 6>#]]|R/W|0|0~255|
 +|87 (0x57)|[[USER 7>#]]|R/W|0|0~255|
 +|88 (0x58)|[[USER 8>#]]|R/W|0|0~255|
 +|89 (0x59)|[[USER 9>#]]|R/W|0|0~255|
 +|90 (0x5A)|[[USER 10>#]]|R/W|0|0~255|
 +|91 (0x5B)|[[USER 11>#]]|R/W|0|0~255|
 +|92 (0x5C)|[[USER 12>#]]|R/W|0|0~255|
 +|93 (0x5D)|[[USER 13>#]]|R/W|0|0~255|
 +|94 (0x5E)|[[USER 14>#]]|R/W|0|0~255|
 +|95 (0x5F)|[[USER 15>#]]|R/W|0|0~255|
 +
 +*****Model Number [#n4d55da8]
 +本製品のモデルナンバーです。ホストはこの値で製品の種類を判別します。
 +
 +*****Version of Firmware [#s44e01a9]
 +搭載されたマイコンに書き込まれたファームウェアのバージョンです。
 +
 +*****ID [#cf9c14f9]
 +ネットワーク上の個体を特定する固有の番号です。同一ネットワークに同じIDを持ったデバイスが存在してはなりません。~
 +デフォルトは200です。
 +
 +*****Baudrate [#y9835609]
 +デバイスの通信速度です。以下の公式で計算します。~
 +Baudrate[BPS]=2000000 / (value + 1)~
 +デフォルトは1M[bps](value=1)です。~
 +
 +主なBaudrateのデータ値~
 +|Set value(Dec.)|Set value(Hex.)|Baudrate[BPS]|Target Baudrate[BPS]|Error※[%]|
 +|1|0X01|1000000.0|1000000|0.000|
 +|3|0X03|500000.0|500000|0.000|
 +|4|0X04|400000.0|400000|0.000|
 +|7|0X07|250000.0|250000|0.000|
 +|9|0X09|200000.0|200000|0.000|
 +|16|0X10|117647.1|115200|-2.124|
 +|34|0X22|57142.9|57600|0.794|
 +|103|0X67|19230.8|19200|-0.160|
 +|207|0XCF|9615.4|9600|-0.160|
 +注意: ホストとのボーレートの誤差は±2%以下とします。
 +
 +*****WriteNVM [#iee6d02c]
 +1を書き込むとコントロールテーブルに設定された値のうち、不揮発領域の値のみを不揮発メモリへ記憶します。~
 +コントロールテーブルの不揮発領域はRAM領域と同様に扱う事ができますが、パワーサイクル毎に不揮発メモリに保存された値で初期化されます。
 +
 +*****LED [#db0623c9]
 +1を書き込むとLED1が点灯します。
 +*****Pin Config 0~11 [#xbae87b5]
 +GPIO0~11の各端子の機能を設定します。~
 +デフォルトはデジタル入力(0:DIN)です。
 +
 +-0:DIN~
 +デジタル入力~
 +[[INレジスタ>#b0d5c532]]に入力値がストアされる~
 +#ref(E097_GPIO_IN.png)
 +-1:DIN(PU)~
 +デジタル入力(数十~数百kΩ程度の内蔵プルアップ抵抗ON)~
 +[[INレジスタ>#b0d5c532]]に入力値がストアされる
 +-2:DIN(PD)~
 +デジタル入力(数十~数百kΩ程度の内蔵プルダウン抵抗ON)~
 +[[INレジスタ>#b0d5c532]]に入力値がストアされる
 +-3:DOUT~
 +デジタル出力~
 +[[OUTレジスタ>#u126a95c]]の値が出力される
 +#ref(E097_GPIO_OUT.png)
 +-4:DOUT(OC)~
 +デジタル出力(オープンコレクタ)~
 +[[OUTレジスタ>#u126a95c]]の値が出力される
 +#ref(E097_GPIO_OUT2.png)
 +-5:AIN~
 +アナログ計測~
 +[[ADVレジスタ>#a489271c]]に測定値がストアされる
 +#ref(E097_GPIO_ADV.png)
 +-6~11:PWM0~5~
 +PWM出力~
 +[[PWM Dutyレジスタ>#x543dc01]]/[[PWM Cycleレジスタ>#mf48bbdc]]の比でパルス出力される
 +-12~15:MPW0~3~
 +パルス幅計測~
 +[[Captureレジスタ>#v88310ce]]に測定値がストアされる
 +-16~19:MPC0~4~
 +パルスカウント~
 +[[Captureレジスタ>#v88310ce]]に測定値がストアされる
 +-20:UFUNC~
 +ユーザ定義~
 +本設定以外の機能を割り当てる際に設定
 +
 +*****Base Clock [#gc9bef4b]
 +タイマ機能(PWM,MPW,MPC)を使用する機能を割り当てた際の基準クロックを選択します。ベースクロックは全タイマ共通となります。
 +
 +*****PWM Cycle 0~5 [#mf48bbdc]
 +GPIOにPWM機能を割り当てた際に、各PWMのカウンタのオーバーフロー値を設定します。
 +
 +*****PWM Duty 0~5 [#x543dc01]
 +GPIOにPWM機能を割り当てた際に、PWM Cycle値以下でデューティーを設定します。
 +
 +*****Capture 0~5 [#v88310ce]
 +GPIOにMPWないしMPC機能を割り当てた際に、計測値を保持します。~
 +逐次任意の値で初期化することができます。
 +
 +*****OUT [#u126a95c]
 +GPIOにデジタル出力機能を割り当てた際に、レジスタの該当ビットに設定した値をGPIOから出力します。
 +| ''Bit'' | 15~12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +| ''GPIO'' | - | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +*****IN [#b0d5c532]
 +GPIOにデジタル入力機能を割り当てた際に、GPIOに入力された信号がレジスタに反映されます。
 +| ''Bit'' | 15~12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +| ''GPIO'' | - | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +*****ADV 0~11 [#a489271c]
 +GPIOをアナログ入力機能を割り当てた際に、GPIOに入力された電圧を12bitの分解能で計測します。
 +
 +*****USER 0~15 [#r5df91b6]
 +任意の自作タスクとコントロールテーブル間のI/Fです。使い道は自由です。
 +
 +****Dynamixelホスト機能 [#vb5d5cac]
 +Dynamixelホスト用のファームウェアを書き込むことにより、本機を他のDynamixelシリーズのホストとして機能させます。Dynamixelクライアントとしては機能しなくなります。
 +#ref(E097_HostImage.png)


Front page   Diff ReloadPrint View   Page list Search Recent changes   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom)