リファレンスマニュアル
作成: Doxygen 1.5.5
Fri Mar 6 23:04:33 2009
Contents
1 移動台車(RT-Mover)制御用コンポーネント 1
2 構成索引 3
2.1 構成 . . . 3
3 ファイル索引 5 3.1 ファイル一覧 . . . 5
4 クラス 7 4.1 クラスCMoverComm . . . 7
4.2 クラスmoverComm . . . 11
5 ファイル 19 5.1 ccomm.cpp . . . 19
5.2 ccomm.h . . . 20
5.3 moverComm.cpp . . . 21
5.4 moverComm.h . . . 23
5.5 moverCommComp.cpp . . . 25
Chapter 1
移動台車 (RT-Mover) 制御用コンポー
ネント
RT-Mover(千葉工業大学中嶋研究室が開発した不整地移動台車)を制御するコンポーネントです. つくばチャレンジ用に作成したプログラムです。
バグが残っていると思いますが、何かの役に立てばと思い公開します。 注意:
このプログラムによって発生した損害は補償しません。 あくまでもサンプルとお考えください。
日付:
2008.03.04
作者:
Chiba Institute of Technology
Chapter 2
構成索引
2.1 構成
クラス、構造体、共用体、インタフェースの説明です。
CMoverComm(UDP/IPのソケット間通信を行うクラス) . . . 7 moverComm(移動台車(RT-Mover)と通信を行うクラス ) . . . 11
Chapter 3
ファイル索引
3.1 ファイル一覧
これはファイル一覧です。
ccomm.cpp(UDP/IPのソケット間通信を行うクラス) . . . 19
ccomm.h(UDP/IPのソケット間通信を行うクラス) . . . 20
moverComm.cpp(移動台車(RT-Mover)を制御するクラス) . . . 21
moverComm.h(移動台車(RT-Mover)を制御するクラス) . . . 23
moverCommComp.cpp(移動台車(RT-Mover)を制御するコンポーネント) . . . 25
Chapter 4
クラス
4.1 クラス CMoverComm
UDP/IPのソケット間通信を行うクラス
#include <ccomm.h>
Public メソッド
CMoverComm() コンストラクタ
∼CMoverComm () デストラクタ
bool Initialize(const char ∗, unsigned short, unsigned short) UDP/IPのソケット間通信を行う初期設定
void Close()
UDP/IPのソケットをクローズする
intSend(short ∗s_data, int data_len) UDP/IPのソケットにデータを出力する
intRecv(short ∗r_data)
UDP/IPのソケットにデータを出力する
Public 変数
intdstSocket
intdstSocket_rev
intsrcSocket
8 クラス
socklen_t sin_size
fd_setinputs
fd_settestfds
struct timevaltimeout
struct sockaddr_in dstAddr
struct sockaddr_in srcAddr
4.1.1 説明
UDP/IPのソケット間通信を行うクラス
4.1.2 コンストラクタとデストラクタ
4.1.2.1 CMoverComm::CMoverComm ()
コンストラクタ
4.1.2.2 CMoverComm::∼CMoverComm ()
デストラクタ
4.1.3 関数
4.1.3.1 bool CMoverComm::Initialize (const char ∗ destination, unsigned short recv_port, unsigned short trans_port)
UDP/IPのソケット間通信を行う初期設定 初期設定を行いソケットをオープンする 引数:
← destination 通信先の IP アドレス
← recv_port 受信ポート
← trans_port 送信ポート
戻り値:
true:成功false:失敗
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
4.1 クラス CMoverComm 9
4.1.3.2 void CMoverComm::Close () UDP/IPのソケットをクローズする
戻り値: 無し
4.1.3.3 int CMoverComm::Send (short ∗ s_data, int data_len) UDP/IPのソケットにデータを出力する
引数:
← s_data 送信するデータ列
← data_len データのバイト数
戻り値:
送信したバイト数
4.1.3.4 int CMoverComm::Recv (short ∗ r_data) UDP/IPのソケットにデータを出力する
引数:
→ r_data 受信したデータの配列
戻り値:
受信したバイト数
4.1.4 変数
4.1.4.1 int CMoverComm::dstSocket
4.1.4.2 int CMoverComm::dstSocket_rev
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
10 クラス
4.1.4.3 int CMoverComm::srcSocket
4.1.4.4 socklen_t CMoverComm::sin_size
4.1.4.5 fd_set CMoverComm::inputs
4.1.4.6 fd_set CMoverComm::testfds
4.1.4.7 struct timeval CMoverComm::timeout [read]
4.1.4.8 struct sockaddr_in CMoverComm::dstAddr [read]
4.1.4.9 struct sockaddr_in CMoverComm::srcAddr [read]
このクラスの説明は次のファイルから生成されました:
ccomm.h
ccomm.cpp
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
4.2 クラス moverComm 11
4.2 クラス moverComm
移動台車(RT-Mover)と通信を行うクラス
#include <moverComm.h>
Public メソッド
moverComm(RTC::Manager ∗manager) コンストラクタ
∼moverComm () デストラクタ
virtual RTC::ReturnCode_t onInitialize() 移動台車の初期化
virtual RTC::ReturnCode_t onFinalize() コンポーネントを終了するときに呼び出される関数
virtual RTC::ReturnCode_t onActivated(RTC::UniqueId ec_id) コンポーネントをアクティベートするときに呼ばれる関数
virtual RTC::ReturnCode_t onDeactivated(RTC::UniqueId ec_id) コンポーネントをデアクティベートするときに呼ばれる関数
virtual RTC::ReturnCode_t onExecute(RTC::UniqueId ec_id) アクティベート中に定期的に呼ばれる関数
Protected 変数
unsigned shortm_recv_port
unsigned shortm_trans_port
std::stringm_ip_address
std::stringm_input_type
std::stringm_is_signal
TimedFloatSeqm_command
InPort< TimedFloatSeq >m_commandIn
TimedFloatSeqm_moverData
OutPort< TimedFloatSeq >m_moverDataOut
CMoverComm comm
UDP/IPで通信を行うクラス
std::stringCOMMAND コマンドの文字列
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
12 クラス
short s_data[3]
short r_data[16]
oatsend_data[3]
oatget_data[16]
oatx
oaty
oatz
oatspeed
oatangle
oatz_angle
oatf_steer
oatb_steer
oatgamma
oatgamma_v
oatave_f [MOVE_AVE_NUM]
oatave_b[MOVE_AVE_NUM]
oatave_v[MOVE_AVE_NUM]
intisOpen
4.2.1 説明
移動台車(RT-Mover)と通信を行うクラス
4.2.2 コンストラクタとデストラクタ
4.2.2.1 moverComm::moverComm (RTC::Manager ∗ manager)
コンストラクタ
引数:
← manager Maneger Object
4.2.2.2 moverComm::∼moverComm ()
デストラクタ
4.2.3 関数
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
4.2 クラス moverComm 13
4.2.3.1 RTC::ReturnCode_t moverComm::onInitialize () [virtual]
移動台車の初期化
The initialize action (on CREATED->ALIVE transition) formaer rtc_init_entry()
戻り値:
RTC::ReturnCode_t
パラメータの設定コンポーネントの入出力の設定
戻り値: RTC_OK
4.2.3.2 RTC::ReturnCode_t moverComm::onFinalize () [virtual]
コンポーネントを終了するときに呼び出される関数 シリアル通信デバイスをクローズする
戻り値: RTC_OK
4.2.3.3 RTC::ReturnCode_t moverComm::onActivated (RTC::UniqueId ec_id) [virtual]
コンポーネントをアクティベートするときに呼ばれる関数 シリアル通信デバイスをオープンする
変数の初期化を行う 戻り値:
RTC_OK
4.2.3.4 RTC::ReturnCode_t moverComm::onDeactivated (RTC::UniqueId ec_id) [virtual]
コンポーネントをデアクティベートするときに呼ばれる関数 シリアル通信デバイスをクローズする
戻り値: RTC_OK
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
14 クラス
4.2.3.5 RTC::ReturnCode_t moverComm::onExecute (RTC::UniqueId ec_id) [virtual]
アクティベート中に定期的に呼ばれる関数
台車に送信するデータが入力されると,フィルタをかけて台車に送信する 台車から受信したデータを,出力ポートに送信する
引数:
← m_command 移動台車に送信するデータの配列
→ m_moverData 移動台車から受信するデータの配列
戻り値: RTC_OK
4.2.4 変数
4.2.4.1 unsigned short moverComm::m_recv_port [protected]
Name: recv_port
DefaultValue: 9874
4.2.4.2 unsigned short moverComm::m_trans_port [protected]
Name: trans_port
DefaultValue: 9875
4.2.4.3 std::string moverComm::m_ip_address [protected]
Name: ip_address
DefaultValue: 192.168.1.11
4.2.4.4 std::string moverComm::m_input_type [protected]
4.2.4.5 std::string moverComm::m_is_signal [protected]
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
4.2 クラス moverComm 15
4.2.4.6 TimedFloatSeq moverComm::m_command [protected]
4.2.4.7 InPort<TimedFloatSeq> moverComm::m_commandIn [protected]
4.2.4.8 TimedFloatSeq moverComm::m_moverData [protected]
4.2.4.9 OutPort<TimedFloatSeq> moverComm::m_moverDataOut [protected]
4.2.4.10 CMoverComm moverComm::comm [protected] UDP/IPで通信を行うクラス
4.2.4.11 std::string moverComm::COMMAND [protected]
コマンドの文字列
4.2.4.12 short moverComm::s_data[3] [protected]
4.2.4.13 short moverComm::r_data[16] [protected]
4.2.4.14 oat moverComm::send_data[3] [protected]
4.2.4.15 oat moverComm::get_data[16] [protected]
4.2.4.16 oat moverComm::x [protected]
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
16 クラス
4.2.4.17 oat moverComm::y [protected]
4.2.4.18 oat moverComm::z [protected]
4.2.4.19 oat moverComm::speed [protected]
4.2.4.20 oat moverComm::angle [protected]
4.2.4.21 oat moverComm::z_angle [protected]
4.2.4.22 oat moverComm::f_steer [protected]
4.2.4.23 oat moverComm::b_steer [protected]
4.2.4.24 oat moverComm::gamma [protected]
4.2.4.25 oat moverComm::gamma_v [protected]
4.2.4.26 oat moverComm::ave_f[MOVE_AVE_NUM] [protected]
4.2.4.27 oat moverComm::ave_b[MOVE_AVE_NUM] [protected]
4.2.4.28 oat moverComm::ave_v[MOVE_AVE_NUM] [protected]
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
4.2 クラス moverComm 17
4.2.4.29 int moverComm::isOpen [protected]
このクラスの説明は次のファイルから生成されました:
moverComm.h
moverComm.cpp
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
Chapter 5
ファイル
5.1 ccomm.cpp
UDP/IPのソケット間通信を行うクラス
#include "ccomm.h"
マクロ定義
#deneBUFF_SIZE32
5.1.1 説明
UDP/IPのソケット間通信を行うクラス
日付:
2008.03.04
5.1.2 マクロ定義
5.1.2.1 #dene BUFF_SIZE 32
20 ファイル
5.2 ccomm.h
UDP/IPのソケット間通信を行うクラス
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/time.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
構成
classCMoverComm
UDP/IPのソケット間通信を行うクラス
5.2.1 説明
UDP/IPのソケット間通信を行うクラス
日付:
2008.03.04
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
5.3 moverComm.cpp 21
5.3 moverComm.cpp
移動台車(RT-Mover)を制御するクラス
#include "moverComm.h"
#include <math.h>
マクロ定義
#deneMOVE_AVE_NUM(50) 平均を計算するための配列の数
#deneSPEED_MAX(0.3f) 最大速度(m/s)
#deneSTEER_MAX((M_PI/6)) 最大角度(rad)
#deneSAMPLING_T
#deneCUT_OFF_T
関数
double getrusage_sec()
oataverage(oat a[ ], int max)
void moverCommInit(RTC::Manager ∗manager)
5.3.1 説明
移動台車(RT-Mover)を制御するクラス
日付:
2008.03.04
作者:
T.Hayashi
5.3.2 マクロ定義
5.3.2.1 #dene CUT_OFF_T
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
22 ファイル
5.3.2.2 #dene MOVE_AVE_NUM (50)
平均を計算するための配列の数
5.3.2.3 #dene SAMPLING_T
5.3.2.4 #dene SPEED_MAX (0.3f)
最大速度(m/s)
5.3.2.5 #dene STEER_MAX ((M_PI/6))
最大角度(rad)
5.3.3 関数
5.3.3.1 oat average (oat a[ ], int max)
5.3.3.2 double getrusage_sec ()
5.3.3.3 void moverCommInit (RTC::Manager ∗ manager)
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
5.4 moverComm.h 23
5.4 moverComm.h
移動台車(RT-Mover)を制御するクラス
#include <rtm/Manager.h>
#include <rtm/DataFlowComponentBase.h>
#include <rtm/CorbaPort.h>
#include <rtm/DataInPort.h>
#include <rtm/DataOutPort.h>
#include <rtm/idl/BasicDataTypeSkel.h>
#include "ccomm.h"
構成
classmoverComm
移動台車(RT-Mover)と通信を行うクラス
マクロ定義
#deneMOVE_AVE_NUM(500)
関数
void moverCommInit(RTC::Manager ∗manager)
5.4.1 説明
移動台車(RT-Mover)を制御するクラス
日付:
2008.03.04
作者:
T.Hayashi
5.4.2 マクロ定義
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
24 ファイル
5.4.2.1 #dene MOVE_AVE_NUM (500)
5.4.3 関数
5.4.3.1 void moverCommInit (RTC::Manager ∗ manager)
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
5.5 moverCommComp.cpp 25
5.5 moverCommComp.cpp
移動台車(RT-Mover)を制御するコンポーネント
#include <rtm/Manager.h>
#include <iostream>
#include <string>
#include <stdlib.h>
#include "moverComm.h"
関数
void MyModuleInit(RTC::Manager ∗manager)
intmain (int argc, char ∗∗argv)
5.5.1 説明
移動台車(RT-Mover)を制御するコンポーネント
日付:
2008.03.04
作者:
T.Hayashi
5.5.2 関数
5.5.2.1 int main (int argc, char ∗∗ argv)
5.5.2.2 void MyModuleInit (RTC::Manager ∗ manager)
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
Index
∼CMoverComm CMoverComm,8
∼moverComm moverComm,12 angle
moverComm,16 ave_b
moverComm,16 ave_f
moverComm,16 ave_v
moverComm,16 average
moverComm.cpp,22 b_steer
moverComm,16 BUFF_SIZE
ccomm.cpp,19 ccomm.cpp,19
BUFF_SIZE,19 ccomm.h,20
Close
CMoverComm,8 CMoverComm,7
∼CMoverComm,8 Close,8
CMoverComm,8 dstAddr,10 dstSocket,9 dstSocket_rev,9 Initialize,8 inputs,10 Recv,9 Send,9 sin_size,10 srcAddr,10 srcSocket,9 testfds,10 timeout,10 commmoverComm,15 COMMAND
moverComm,15 CUT_OFF_T
moverComm.cpp,21 dstAddr
CMoverComm,10 dstSocket
CMoverComm,9 dstSocket_rev
CMoverComm,9 f_steer
moverComm,16 gamma
moverComm,16 gamma_v
moverComm,16 get_data
moverComm,15 getrusage_sec
moverComm.cpp,22 Initialize
CMoverComm,8 inputs
CMoverComm,10 isOpen
moverComm,16 m_command
moverComm,14 m_commandIn
moverComm,15 m_input_type
moverComm,14 m_ip_address
moverComm,14 m_is_signal
moverComm,14 m_moverData
moverComm,15 m_moverDataOut
moverComm,15 m_recv_port
moverComm,14
INDEX 27
m_trans_port moverComm,14
mainmoverCommComp.cpp,25 MOVE_AVE_NUM
moverComm.cpp,21 moverComm.h,23 moverComm,11
∼moverComm,12 angle,16
ave_b,16 ave_f,16 ave_v,16 b_steer,16 comm,15 COMMAND,15 f_steer,16 gamma,16 gamma_v,16 get_data,15 isOpen,16 m_command,14 m_commandIn,15 m_input_type,14 m_ip_address,14 m_is_signal,14 m_moverData,15 m_moverDataOut,15 m_recv_port,14 m_trans_port,14 moverComm,12 onActivated,13 onDeactivated,13 onExecute,13 onFinalize,13 onInitialize,12 r_data,15 s_data,15 send_data,15 speed,16 x,15 y,15 z,16 z_angle,16 moverComm.cpp,21
average,22 CUT_OFF_T,21 getrusage_sec,22 MOVE_AVE_NUM,21 moverCommInit,22 SAMPLING_T,22 SPEED_MAX,22 STEER_MAX,22 moverComm.h,23
MOVE_AVE_NUM,23 moverCommInit,24 moverCommComp.cpp,25
main,25
MyModuleInit,25 moverCommInit
moverComm.cpp,22 moverComm.h,24 MyModuleInit
moverCommComp.cpp,25 onActivated
moverComm,13 onDeactivated
moverComm,13 onExecute
moverComm,13 onFinalize
moverComm,13 onInitialize
moverComm,12 r_data
moverComm,15 RecvCMoverComm,9
s_data
moverComm,15 SAMPLING_T
moverComm.cpp,22 SendCMoverComm,9 send_data
moverComm,15 sin_size
CMoverComm,10 speed
moverComm,16 SPEED_MAX
moverComm.cpp,22 srcAddr
CMoverComm,10 srcSocket
CMoverComm,9 STEER_MAX
moverComm.cpp,22 testfds
CMoverComm,10 timeout
CMoverComm,10 x moverComm,15
Fri Mar 6 23:04:33 2009に生成されました。Doxygen
28 INDEX
y moverComm,15
z moverComm,16 z_angle
moverComm,16
Fri Mar 6 23:04:33 2009に生成されました。Doxygen