require "dl/import" module DXLIB2 extend DL::Importer dlload "./dxlib2.dll" extern "int DX_OpenPort( char *, long )" extern "int DX_Active( int )" extern "int DX_Ping( int, unsigned char, int, unsigned short * )" extern "int DX_ClosePort( int )" end comport = "\\\\.\\COM3" br = 1000000 timeout = 50 terr = ' ' * 2 mark = "\n" devid = DXLIB2.DX_OpenPort( comport, br ) if ( devid != 0 ) then ret = DXLIB2.DX_Active( devid ) if ( ret == 1 ) then sleep 1 i = 0 while ( i <= 253 ) ret = DXLIB2.DX_Ping( devid, i, timeout, terr ) if ( ret == 1 ) then printf( "\n%d alive", i ) mark = "\n" else printf( "%s%d dead(%x)", mark, i, terr.unpack('S')[0] ) mark = "\r" end i += 1 end end ret = DXLIB2.DX_ClosePort( devid ) if ( ret == 0 ) then print "CLOSE ERROR\n" end end print("\nnormal end") |
SMPL1.rb dxlib2.dll |
> ruby SMPL1.rb |
マイコンやFREEDOM jr.IIIに接続するカラー液晶ディスプレイです。
簡単なグラフィックならさくっと描けちゃう。
組み立ててみた。
組み合わせ次第でいろんな形がつくれるし、構成によっては単三電池1本で動くモータユニットがついてる。
子供の頃を思い出して黄昏てみてはどうだろうか。
FREEDOM jr.IIIの胸部に装着することで、モーション作成や歩行パラメータ調整、ホームポジションの調整などがPCレスでリモコン操作のみでできちゃいます。単にSimple Termで表示されているものが液晶画面に表示されるだけですが。
まだまだ現地調整が手放せないロボット君にはコンソールは必要不可欠。思っただけで伝わる様になるのはいつの日になることやら。ま、人間同士の意思疎通ですら難しいんだから無理ですかね。
なお、こちらも近々商品化される予定です。