ブログ - 最新エントリー

FREEDOMライブラリの変更等

カテゴリ : 
雑記
2011-10-13 21:06
10/8に行われたROBO-ONE LightにFREEDOM Jr.IIIで何台かエントリーされていましたが、弊社の技術サポートからは未完成なサンプルプログラムの提供にとどまっていたにもかかわらず、皆さん予想以上に健闘されていらっしゃったと感じました。
引き続きご活用いただけるべく、10月末までには正式版を公開できるよう作業しておりますので、今しばらくお待ちください。

なお、それに合わせてという訳ではありませんが、FREEDOM IIIライブラリの以下のAPIを修正する予定です。
・DX_Ping2の全面改修
・fd_PlayMotionによるモーションの逆再生追加


その他、ROBO-ONEで計画されている標準化の一環として、モータやセンサ等のデバイスをPC上で一元管理するためのサーバアプリケーション(ROBO-ONE RTWB)の雛形を弊社にてデザインする事となりました。




詳細は次回のROBO-ONE Humanoid Helper Projectにて公開される予定となっておりますのでお楽しみに。

冠雪

カテゴリ : 
雑記
2011-9-28 10:32
裾野から見るいつもの富士の山頂にうっすら白いものが。
涼しいというよりちょっと寒い?

遅ればせながら

カテゴリ : 
雑記
2011-8-20 18:50
今更ですが、8/10発売のトランジスタ技術9月号にZIG-100B(BTX025)の紹介記事が掲載されていました。
BluetoothやZigBeeなどの無線機器の特集となっていますので、興味のある方はご確認を。

MATLAB/simulinkでDXLIB2を動かす

カテゴリ : 
その他
2011-8-19 20:20
MATLABでできてsimulinkでできないことはないよな。ってことで試してみた。
検証環境は前回同様以下の通り。
直接simulinkからDLLを呼出すことはできそうになかったので、MATLABを経由して呼出すことにした。
前回パスは通しているので、いきなりモデルを作成。ちなみにモデルのパスも登録が必要だ。

FunctionではなくEmbedded MATLAB Functionを配置して編集。
dx_openの中身は以下の通り。
function ret = dx_open()
eml.extrinsic ('dxopen');
ret = 0;
ret = dxopen();
MATLABで宣言したdxopenを呼出しているだけ。 当然dxopenはmファイルだ。
function ret = dxopen()
  if exists('dxlib2.h','file') ~= 2;
  disp('Not found');
  devid = 0;
 else
if ~libisloaded('dxlib2'); loadlibrary('dxlib2.dll','dxlib2.h'); end
  devid = calllib('dxlib2','DX_OpenPort','\\.\COM4',1000000);
 if devid ==0; unloadlibrary('dxlib2'); end
  disp('call DX_OpenPort');
  end
  ret = devid;
 disp('start end');
mファイルは前回使用したものを分割して戻り値を返すようにしただけなので、他のmファイルは割愛。
結果は次の通り。


まぁsimulinkから呼出せているからこれで良しとする。

UD3在庫終了

カテゴリ : 
雑記
2011-8-10 16:28
ごめんなさい。在庫が終了してしまいました。
次のロットの納期がまだ確定しておらず、しばらく在庫の補充に間が空いてしまいます。ご了承くださいませ。

ToppersとUDP

カテゴリ : 
TOPPERS
2011-8-2 9:45
イマイチ不完全燃焼していたAT91SAMシリーズのUDP(USB Device Port)とToppersの相性。
現状諸々の処理が多重化すると、カーネルもろともデッドロックしてうんともすんとも言わなくなる症状が出てしまいますが、UDPドライバの一部のフラグ待ちによりデッドロックするという要因がありました。
この影響を受けるのはSAM7S_TOPPERS・FREEDOM III・UD3のUSBを仮想シリアルポートとして使用した場合で、かなり広範に渡っています。

早いうちにこの部分を改修し、合わせてFREEDOM IIIライブラリのマイナーバグフィクスを施したGCC Developer Liteを公開します。

MATLABでDXLIB2を動かす

カテゴリ : 
その他
2011-7-19 17:51
DXLIB2にはLabVIEWのサンプルがあるが、MATLABのサンプルはないのか?
そんな噂を耳にしたので軽くさわりだけの確認を。
検証環境は以下の通り。
準備としてdxlib2.dllとdxlib2.hを作業フォルダへコピー。
MATLABを起動し、「ファイル(F)」→「パス設定(H)」で作業フォルダを追加。
mファイルを新規作成し、以下をdxsample.mとして保存。

function dxsample
if exist('dxlib2.h') ~= 2;
    disp('header undefined');
    return;
end
if ~libisloaded('dxlib2') loadlibrary('dxlib2.dll','dxlib2.h');end
pcom = '\\.\COM3';
br = 1000000;
tout = 100;

devid = calllib('dxlib2','DX_OpenPort',pcom,br);
if devid==0;
    disp('Open failed!');
    unloadlibrary('dxlib2');
    return;
end
Err = libpointer('uint16Ptr', 0);
for i = 0:252
    Ret = calllib('dxlib2', 'DX_Ping', devid, i+1, tout, Err);
    if Ret;
        fprintf('Found ID=%d\n', i+1);
    else
        fprintf('Not found ID=%d [$%04x]\n', i+1, Err.Value);
    end
end

calllib('dxlib2','DX_ClosePort',devid);
unloadlibrary('dxlib2');
disp('Normal end');

結果はこんな感じ。

警告はMATLAB内のwin.hに起因しているようで、少々loadlibraryに時間がかかっているが、ここでは割愛。

蕎麦屋の出前

カテゴリ : 
雑記
2011-7-15 0:14
もう出たところ状態のGCC Developer Liteですが、7/18の週に公開する事を目標に調整中です。
今回は広範にわたるターゲットの更新の他、販売及びサポート終了のターゲットの廃止が行われ、次期バージョンでは使用できなくなる製品があります。よって、現在公開しているバージョンをダウンロードし保存しておくことをお勧めします。
また、公開と合わせて各製品のドキュメントやサンプルコードが更新され、URLが変更になるものもありますので注意してください。

またまたUD3出荷準備中

カテゴリ : 
その他
2011-7-6 20:06
先回のロットがあっという間に終わってしまったため、次ロットの準備を行っている最中です。在庫の充当にはあと数日かかりますので、もうしばらくお待ちください。
なお、既に予約いただいている分に相当数が割り当てられてしまう都合、購入される場合は見積依頼されることをお勧めします。

それと、GCC Developer Liteの更新が間近に迫っており、UD3のライブラリもアップデート対象となっています。一部のコンソールAPIが変更されるため、公開された際はサンプルプログラムも合わせて更新してください。

熱中症目前

カテゴリ : 
雑記
2011-6-24 23:13
今年最高の猛暑日が続く中の移転作業。
黙々と作業に熱中していると熱中症
皆さんもご自愛ください。

それはそうと、ようやく諸々が動き始め、通常業務に戻りましたのでご報告いたします。