Archives
シリアルサーボ制御方法(4) PCから直接制御編(その1)
はじめに 今回は弊社製シリアルサーボモーターをPCから直接制御する方法およびプログラムについて説明します。 PCからシリアルサーボモーターを制御するには、Dual USBアダプターHS、ICS USBアダプターまたはICS USBアダプターHSを使います。付属の2又ケーブルと延長コードを使って信号線と電源線を接続してください。 環境設定 PCではどんな言語を使用しても良いのですが、今回はシリアル通信が簡単にできるような仕組みを持っている、Microsoft社のVisual Basicを使うことにします。Visual BasicはVisual Basic 2010 Express版が無料で使えますので、まずは下記URLにアクセスして、ダウンロードしてください。30日以上使用する場合はMicrosoft社に登録する必要がありますので注意してください。 ダウンロード先 http://www.microsoft.com/japan/msdn/vstudio/express/ ダウンロードが終わったらインストールを行ってください。 起動とプログラム作成 準備 インストールが終わったら早速起動してみましょう。スタートメニューの「Microsoft Visual Stud...
もっと見るシリアルサーボ制御方法(3) ソフト編
はじめに ソフト編では、ICSコマンドをマイコンからサーボモーターに送るためのC言語のプログラムについて説明します。 ここでは説明を簡単にするため、シリアル通信に関しては1バイトのデータを受信する関数(char getchar())と1バイトを送信する関数(void putchar ())ができあがっていることにします。この2つの関数を元にして、シリアルサーボモーターのコマンドの仕組みと通信プログラムの作り方について説明します。 またポジション設定コマンドだけ扱いますので、他のコマンドについてはこれを参考にして作成してみてください。 プログラムは弊社製マイコンボード、KCB-1に付属しているSDK準拠で作成します。KCB-1ではICSコマンドはほとんど関数化されていますので、簡単にシリアルサーボモーターの制御ができます。KCB-1の詳しい情報についてはこちらをご覧ください。 ポジションコマンドの作成 ここではポジション設定コマンドを実行する関数としてset_posというC言語関数を作ってみます。 必要なデータをまとめる まずICSの規格に沿って、ポジションコマンドを作成しましょう。ポジションコマンドの基本命令は次のようになっています。ポジションコマンドやその他の...
もっと見るシリアルサーボ制御方法(2) ICS編
ICSコマンドについて 今回は弊社製シリアルサーボモーターを動かすためのICSコマンドについて説明します。 ICSとは「Interactive Communication System」の略で、近藤科学独自のデータ通信規格です。従来はPWM※でサーボモーターに角度の指令を送っていましたが、特性の変更や拡張などをより細かく制御するため、規格をシリアル通信に変更しました。 ICSバージョン2.0では主にサーボモーターの位置制御や特性の変更をするために使用されてきましたが、現在はその他のデバイスも接続できるように拡張されています。バージョン3.5ではサーボモーターのモーター温度などが読み込めるようになりました。 各種ICS規格については、詳細なリファレンスマニュアルが公開されています。下記リンクからお持ちのサーボモーターに該当するマニュアルをダウンロードいただき、今回の記事と併せてご利用ください。 ICS3.6コマンドリファレンス (KRS-6003R2HV/3301)ICS3.5コマンドリファレンス (KRS-4032HV/4033HV/4034HV/2552RHV/6003RHV/3304/3204) ICS3.0コマンドリファレンス (KRS-2552HV/600...
もっと見るシリアルサーボ制御方法(1) 回路編
はじめに 近藤科学社製のロボット用サーボモーターは、ロボットコントローラーやPCから簡単に操作できるようなシステムになっています。今回より5回にわたって、近藤科学社製シリアルサーボモーターを制御する方法を紹介します。 回路編 自作マイコンでサーボモーターを制御するために必要な電気回路について説明します。 ICS編 ロボット用シリアルサーボモーターのICSコマンドについて詳しく説明します。 ソフト編 ICSコマンドを自作マイコンで使うためのテクニックについて説明します。 PCから直接制御編(その1) Microsoft Visual Basicを使って、PCからICSコマンドを送信するための準備をします。 PCから直接制御編(その2) Microsoft Visual Basicでスライドバーでシリアルサーボモーターを動かすプログラムを行います。 今回の「回路編」では弊社製サーボモーターを動かすための電気回路について説明します。 回路説明 下記回路図は近藤科学社製KCB-1マイコンボードのシリアルサーボモーターを駆動する部分のみを書き出したものです。回路図のSIOコネクタの番号は、1番が信号線、2番が電源線、3番がグランド線となっています。弊社製ロボット用シリ...
もっと見るシリアルUSBアダプターをLinuxで使うには
準備 弊社製シリアルUSBアダプターシリーズはWindows OS以外での動作保証をしておりませんが、適切なドライバーを使うことで、Linuxでも使用できます。 Linuxで使用するときはusbserial.ko、ftdi_sio.koという2つのドライバー(正式にはカーネルモジュールと言います)が必要となります。このドライバーはUbuntu Linuxなどでは標準でインストールされています。例えばUbuntu Linux 10.04では「/lib/modules/2.6.32-21-generic/kernel/drivers/usb/serial」にインストールされています。 次にシリアルUSBアダプターHSを取り付け、下記コマンドでドライバーをセットしてください。modprobeコマンドでftdi_sioドライバーを取り付けると、自動的にusbserial.koドライバーも取り付けられます。 <rootユーザーの場合> # modprobe ftdi_sio vendor=0x165C product=0007 1 #...
もっと見る