ニュース

    夏季休業のお知らせ (2014/08/11)

    8月13日~15日は全ての業務をお休みさせて頂きます。
    その間にオンラインショップからご注文頂いた場合は、休み明けから順次発送を行います。

    予めご了承ください。

    Digitus STM32F3マイコンボードリリースのお知らせ (2014/08/08)

    カスタム製品の一環としてDigitusシリーズを展開しておりますが、STマイクロエレクトロニクス社のSTM32F373CCを搭載したマイコンボードが好評のため、このたび一般販売を開始いたします。

    STM32F373のコアはARM社のCortex-M4で、DSP命令及びFPU命令をサポートし、小型ながら高速かつ高度な演算をこなす事ができます。

    両端のランドは40ピンのDIPパッケージのICと同じサイズになっており、ブレッドボード等で実験する際も扱い安くなっています。


    また、USB I/Fを介してPCと接続する事で電源供給が行える他、プログラムの書き換えが行えます。



    ショップページへ
    商品名:Digitus STM32F3
    商品番号:BTC097
    価格:¥4,400. (税別)
    付属品:本体・ピンヘッダ

    詳細はこちらをご覧ください。

    UD3.5入荷予定 (2014/07/16)

    少量ですが、ウェブショップ用の在庫を確保しました

    8/4 更新




    今年も暑い夏がやって参りました。
    富士ソフト様のサイトにて第26回全日本ロボット相撲大会のエントリー受付開始が告知されております。

    さて、リビジョンが変わって2年目になるユニバーサルドライバ3.5は、現在製造中のステータスとなりました。入荷は概ね7月末~8月上旬を予定しておりますので、ご用命の際はその頃になりましたらウェブショップの在庫をご確認いただければと思います。


    BTA026 ユニバーサルドライバ3.5
    BTA027 ユニバーサルドライバ3.5 Advance

ニュースのトップへ

ブログ

    Digitus STM32F3用ブートローダ (2014/08/20)

    Digitus STM32F3用ブートローダの情報が不完全でしたので本日補完しました。
    STM32F3 Bootloader
    ST社のDfuSeというツールを使えばUSB経由でチップのフラッシュへ書き込む事ができますが、その前にBOOT0端子(CN2-38)を3.3V端子(CN1-2)につないでからUSBケーブルを接続してください。

    技術

    DXLIB V3.0公開 (2014/06/11)

    Dynamixel Library Version 3.0を公開しました。

    既にいくつかのソフトウェアには導入済みですが、DXLIB2(XLやProシリーズの新プロトコル用API)の機能拡張に伴い、パラメータの互換性を保つためDXLIBも修正を施しました。
    主な変更点は以下の通りです。
    • アドレス指定を8bitから16bitに変更
    • 不明瞭だったTDxAlarmStatus構造体のアライメントを1バイト境界に固定
    • 似非ReadSync APIを追加
    • 不定なDevice IDを指定された際のクラッシュを簡易的にブロック
    • dllのソースをC++に
    • API引数の変更に伴い各サンプルを修正
    • LabVIEWのサンプルを大幅に拡充
    • EXCELのVBAを64bitに対応
    特にLabVIEWから制御する際の使い勝手を向上させたのと、サンプルプログラムを増やしました。特定のアイテムへのアクセスを対象としたviは、ループ中に適用しても不用意にトラフィックを上げない様な仕掛けや、LabVIEWのイベントストラクチャを多用したり、ダイナミックなポートの開閉等、そこそこがんばってみました。

    PCから直接制御する際の参考にして下さい。

    技術

    DynamixelをPCから直接コントロール (2014/06/02)

    ■Dynamixelをコントロールするにあたり

    DynamixelシリーズをPCから制御ためのAPIとしてDXLIBを公開していますが、Dynamixelが持っているコントロールテーブルへアクセスする事に特化しているため、Dynamixelの素性に応じた違いや行いたい制御方法によっては無限とも言える組み合わせでユーザ自ら試行錯誤してプログラミングしなくてはなりません
    一応1台のDynamixelの動作を確認したり設定を変更するのであればDXCONFというツールである程度対応できますが、こちらもまたコントロールテーブルの中身を可視化させて書き換えがしやすくなっている意外には特別な機能は持っていません。
    さらに、マイコンから制御するとなると、これまたPCとは違う知識が要求される面が多々あって、「ひとまず動かしてみる」といった用途には向きません。

    結局のところ、プログラミングスキルを身につけないと、要求仕様のレベルが少し上がるだけでハードルがうんと高くなってしまうのが実情です

    ■とりあえずでもある程度動かす

    Dynamixelを使用する台数が多いアプリケーションは用途が複雑なケースが大半でしょうから、双方向で通信できる事に期待した機能も盛り込みたくなるのが心情です。しかしながら構成が変わる度にゼロからプログラミングするのはかなり酷ですし、複雑であるがゆえに初期の段階で試運転したくなります。

    ということで、少しでもそれらのニーズの一助となればと思い、PCとDynamixel間をDXHUBUSB-3WAY等で接続した環境において、予め設定しておいた様々な動きを再現させるだけのツールを準備する事としました。
    予め各々異なるIDを振りボーレートを同じにしたDynamixelを、みんなつないで一斉に面倒を見てくれるといった感じです。
    実は、これと同様な環境がROBO-ONEというイベントで頒布したツールにも含まれていましたが、イベントという事もあり解る方にしかわからない環境を要求されてしまうのと複数メーカをサポートしているため、二次的に頒布するには使い勝手が悪いのは否めませんでした。

    今回は用途を「ひとまず複数台を連動してスムーズに動かす」に限定し、全てNI社LabVIEWを使って作り直したものを提供することにします。

    ■大まかな構成

    プログラムは2つ提供します。

    <ホスト>
    Dynamixelとの通信を高い頻度で行い続けるホスト役で、ウィンドウの外観からは動いている事をうかがい知ることがほとんどできませんが、Dynamixelならではの処理ルーチンが集約されています。
    基本的に、後述する他のプログラム等から角度と角速度程度の情報をこのホストに投げかけると、目的の角度まで自動的にスムーズに動かしてくれます。
    また、アラームやエラー・温度・トルク・現在角度をリアルタイムに取得し続けていますので、これらの情報を他のプログラムからモニタする事もできます。
    なお、DynamixelのID・Baudrate・Return Delay Timeの3つの設定に限り本ツールより直接変更する機能も盛り込んでいますので、よほどのことが無い限りDXCONFいらずです。

    基本的な操作は、IDやDynamixelの種類、Goal Position等の位置と角度(deg)の変換係数、ホームポジションといった情報を登録するだけですが、接続されたDynamixelを自動的に検索して登録させる事もできます。



    <エディタ>
    DynamixelのネイティブなIDや位置の概念は無く、ホストに登録された順に軸を扱い、各軸のホームポジションからの角度(deg)の偏差と時間を扱うポーズエディタです。
    アニメーションの様にある時点の角度を記憶させ、それを複数用意し、最終的に連続して再生するといった手法を採用しています。本当のアニメーションの様にたくさんのポーズを作る必要はなく、今のポーズから次のポーズへ移行する時間を設定する事で、その間は自動的に直線的に補完します。ようするに道のりを問わないのであれば、A地点からB地点移動する場合はA地点とB地点の2つのポーズだけ登録し、その間を移動する時間を設定すれば良い訳です。なお、FDIII-HCのライブラリとほぼ考え方は一緒です。
    ポーズはファイルとして保存できますので、二次利用も容易なはずです。

    なお、本ツールではポーズの編集と再生以外の機能は持たせるつもりは無く、さらなる利便性やニーズに応える機能は別の機会に提供しようと考えています。
    一応ホストはそのままで、エディタをIKを使った6軸アームロボット制御プログラムに入れ替えたものや、もっと実機に近いイメージでポーズをデザインできるエディタ等は既に一部に提供済だったりしますが、他に何か楽しげなネタがあればリクエストいただければと思います。



    ■制約等

    <PC>
    最近のマルチコアCPUを搭載したPCがあると良いです。必須というわけではありませんが、ある程のリアルタイム性を確保するためには、ここ数年来のPCがあると良いです。

    <レイテンシ>
    DXHUBやUSB-3WAYはPCのUSBポートに接続して使用しますが、これらに適用されるデバイスドライバをデフォルトのまま使用すると通信の応答性が極端に悪くなり、スムーズな動作ができなくなります。
    各I/Fのドキュメントに記載されている応答の待ち時間を1にしなくてはなりません。

    <ボーレート>
    先のレイテンシと似ていますが、通信速度が遅いと情報の伝達速度も遅くなります。できるだけ高速な通信が望まれるため、ボーレートは1Mbpsを推奨します。

    <Dynamixel I/F>
    よく見受けられる散発的だったり一方通行のDynamixelとの通信プログラムとは異なり、ホストではかなり込み入ったトランザクションを処理します。そのため、正常に通信が行えないDynamixelがI/F上に1台でも存在していてはなりません。

    <ネットワーク環境>
    LabVIEWの機能をふんだんに使っているため、オンライン・オフラインにかかわらずファイアウォールの影響を受けます。アンチウィルス等でポート開放の動作が阻害されないようにしなくてはなりません。

    <LabVIEWのランタイムエンジン>
    提供するプログラムはexeファイルではありますが、LabVIEW 2011SP1にて開発されているため、ランタイムエンジンを予めインストールしておく必要があります。

    <制限>
    フリー版と有償版を準備する予定ですが、どの程度の機能制限をするかは検討中でして、今のところ軸数や動作時間を予定しています。



    といったところで、今月中には試食版を提供できる予定です。

    技術

    Dynamixel Configurator 2.2公開 (2014/04/28)

    Dynamixel Configuratorの最新版を公開しました。
    今回の更新は新しい通信プロトコルへの対応が主で、従来からの機能の変更はありません。



    主な変更点
    • 最新DXLIB適用 (未公開)
    • 最新DXLIB2適用 (未公開)
    • Dynamixe MX-12W対応
    • Dynamixe XL-320対応

ブログのトップへ