添加了 归零等操作
增加了testdll 样例
This commit is contained in:
111
vincecontrol.h
111
vincecontrol.h
@ -68,11 +68,14 @@ struct ByteBack
|
||||
/********************************************************************
|
||||
* 描述:马达控制程序
|
||||
* 使用步骤
|
||||
* 1)初始话 需要告诉通讯协议(Vince规定的):
|
||||
* 2)如果是485 请设置id 默认为0
|
||||
* 3) serialconnect 建立链接
|
||||
* 4)使用
|
||||
* 2020-8-5:立新
|
||||
* 1 初始化 需要告诉通讯协议(Vince规定的) 如:motor = new VinceControl(NETTCP, 6000);
|
||||
* 2 通过 motor->IsMotorInit 来判断是否右马达接入
|
||||
* 建议:
|
||||
* 1) 可以用SettingZeroLocation()结合传感器的是指来设置零为
|
||||
* 2)关于传感器的设置均在initmotor()函数里
|
||||
* 注意:
|
||||
* 类中所有默认参数再不设置的情况下均指网络通讯的第一个设备id
|
||||
* 2020-8-5:立新
|
||||
*******************************************************************/
|
||||
class VINCECONTROL_EXPORT VinceControl:public QObject
|
||||
{
|
||||
@ -88,6 +91,7 @@ public:
|
||||
// Parameter: ProTools 通讯协议 RS485 或者 RS232
|
||||
//************************************
|
||||
VinceControl(ProTools proto);
|
||||
|
||||
//************************************
|
||||
// Method: VinceControl //走网络协议 需要两个参数 第一个为NETTCP 第二个为端口 6000或者6001
|
||||
// FullName: VinceControl::VinceControl
|
||||
@ -100,16 +104,15 @@ public:
|
||||
VinceControl(ProTools proto,int port);
|
||||
~VinceControl();
|
||||
//************************************
|
||||
// Method: serialconnect
|
||||
// FullName: VinceControl::serialconnect
|
||||
// Method: MoveToLocation 移动到某位置(据0点)
|
||||
// FullName: VinceControl::MoveToLocation
|
||||
// Access: public
|
||||
// Returns: bool
|
||||
// Returns: void
|
||||
// Qualifier:
|
||||
// Parameter: QString comname 串口名称
|
||||
// Parameter: QString bandrate 串口波特率
|
||||
// Parameter: long Location 距离零点的位置
|
||||
//************************************
|
||||
|
||||
bool serialconnect(QString comname,QString bandrate);
|
||||
void MoveToLocation(long Location, QString motornetid = "non");
|
||||
|
||||
//************************************
|
||||
// Method: Handshacke
|
||||
// FullName: VinceControl::Handshacke
|
||||
@ -117,18 +120,18 @@ public:
|
||||
// Returns: void
|
||||
// Qualifier:
|
||||
//************************************
|
||||
|
||||
|
||||
void Handshacke(QString motorid = "non");
|
||||
|
||||
//************************************
|
||||
// Method: SetRS485ID
|
||||
// FullName: VinceControl::SetRS485ID
|
||||
// Method: SettingZeroLocation 马达归零
|
||||
// FullName: VinceControl::SettingZeroLocation
|
||||
// Access: public
|
||||
// Returns: void
|
||||
// Qualifier:
|
||||
// Parameter: QString id RS485 id
|
||||
// Parameter: QString motorid
|
||||
//************************************
|
||||
void SetRS485ID(QString id);
|
||||
void SettingZeroLocation(QString motorid = "non");
|
||||
|
||||
//************************************
|
||||
// Method: 电机使能
|
||||
// FullName: VinceControl::EnableMotro
|
||||
@ -165,6 +168,7 @@ public:
|
||||
// Parameter: int motorid
|
||||
//************************************
|
||||
void SendCommandtoMotor(QString str,QString modor);
|
||||
|
||||
//************************************
|
||||
// Method: MoveSetDistance 电机左移/右移 一定数量(不是距离)
|
||||
// FullName: VinceControl::MoveSetDistance
|
||||
@ -173,8 +177,8 @@ public:
|
||||
// Qualifier:
|
||||
// Parameter: long distance
|
||||
//************************************
|
||||
|
||||
void MoveSetDistance(long distance, QString motornetid = "non");
|
||||
|
||||
//************************************
|
||||
// Method: MoveModar 电机左移/右移 direction是方向
|
||||
// FullName: VinceControl::MoveModar
|
||||
@ -184,6 +188,7 @@ public:
|
||||
// Parameter: bool direction 方向
|
||||
//************************************
|
||||
void MoveMotar(bool direction, QString motornetid = "non");
|
||||
|
||||
//************************************
|
||||
// Method: SettingSpeed 设置速度
|
||||
// FullName: VinceControl::SettingSpeed
|
||||
@ -202,6 +207,7 @@ public:
|
||||
// Qualifier:
|
||||
//************************************
|
||||
void MovetoZero(QString motornetid = "non");
|
||||
|
||||
//************************************
|
||||
// Method: GetLocationNow 获取当前至0点位置
|
||||
// FullName: VinceControl::GetLocationNow
|
||||
@ -209,16 +215,8 @@ public:
|
||||
// Returns: long 位置
|
||||
// Qualifier:
|
||||
//************************************
|
||||
long GetLocationNow();
|
||||
//************************************
|
||||
// Method: MoveToLocation 移动到某位置(据0点)
|
||||
// FullName: VinceControl::MoveToLocation
|
||||
// Access: public
|
||||
// Returns: void
|
||||
// Qualifier:
|
||||
// Parameter: long Location 距离零点的位置
|
||||
//************************************
|
||||
void MoveToLocation(long Location);
|
||||
long GetLocationNow(QString motornetid = "non");
|
||||
|
||||
//************************************
|
||||
// Method: SettingUpandDownSpeed 设置加减速度
|
||||
// FullName: VinceControl::SettingUpandDownSpeed
|
||||
@ -228,16 +226,64 @@ public:
|
||||
// Parameter: int addspeed 加速度
|
||||
// Parameter: int downspeed 减速度
|
||||
//************************************
|
||||
void SettingUpandDownSpeed(int addspeed, int downspeed);
|
||||
void SettingUpandDownSpeed(int addspeed, int downspeed, QString motornetid = "non");
|
||||
|
||||
//************************************
|
||||
// Method: StopMotormove 停止马达
|
||||
// FullName: VinceControl::StopMotormove
|
||||
// Access: public
|
||||
// Returns: void
|
||||
// Qualifier:
|
||||
// Parameter: QString motornetid
|
||||
//************************************
|
||||
void StopMotormove(QString motornetid = "non");
|
||||
|
||||
|
||||
//************************************
|
||||
// Method: GetState
|
||||
// FullName: VinceControl::GetState
|
||||
// Access: public
|
||||
// Returns: ByteBack
|
||||
// Qualifier:
|
||||
// Parameter: QString motorid
|
||||
//************************************
|
||||
ByteBack GetState(QString motorid = "non");
|
||||
|
||||
//************************************
|
||||
// Method: SetRS485ID
|
||||
// FullName: VinceControl::SetRS485ID
|
||||
// Access: public
|
||||
// Returns: void
|
||||
// Qualifier:
|
||||
// Parameter: QString id RS485 id
|
||||
//************************************
|
||||
void SetRS485ID(QString id);
|
||||
|
||||
//************************************
|
||||
// Method: serialconnect
|
||||
// FullName: VinceControl::serialconnect
|
||||
// Access: public
|
||||
// Returns: bool
|
||||
// Qualifier:
|
||||
// Parameter: QString comname 串口名称
|
||||
// Parameter: QString bandrate 串口波特率
|
||||
//************************************
|
||||
bool serialconnect(QString comname, QString bandrate);
|
||||
//************************************
|
||||
// Method: initMotor 设置左右极限 s1是为左极限 且到s1后会将s1位置设置为0 s2是右极限 归零传感器是指为s1
|
||||
// FullName: VinceControl::initMotor
|
||||
// Access: public
|
||||
// Returns: void
|
||||
// Qualifier:
|
||||
// Parameter: QString motornetid
|
||||
//************************************
|
||||
void initMotor(QString motornetid = "non");
|
||||
QStringList Motorlist;
|
||||
bool IsMotorInit;
|
||||
signals:
|
||||
void SendLogToCallClass(QString str);
|
||||
public slots :
|
||||
void onNewTcpClinetConnet();
|
||||
public slots :
|
||||
void onNewTcpClinetConnet();
|
||||
|
||||
void onClinetDisConnet();
|
||||
private:
|
||||
@ -259,6 +305,7 @@ private:
|
||||
void SettingSpeedByThis(long Speed, QString motornetid = "non");
|
||||
ByteBack TranslateBytedata(QByteArray buf, QString motornetid = "non");
|
||||
void initme();
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user