init
This commit is contained in:
111
device/SerialPort/modbustcp.h
Normal file
111
device/SerialPort/modbustcp.h
Normal file
@@ -0,0 +1,111 @@
|
||||
#ifndef MODBUSTCP_H
|
||||
#define MODBUSTCP_H
|
||||
#include <tchar.h>
|
||||
#include <math.h>
|
||||
#include <iostream>
|
||||
#include <process.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <windows.h>
|
||||
#include <conio.h>
|
||||
#include <QSettings>
|
||||
#include <QString>
|
||||
#include<QObject>
|
||||
#include"base.h"
|
||||
|
||||
struct PLC_COMMAND{
|
||||
unsigned short cmdAddr;
|
||||
bool cmdWriteFlag;
|
||||
int cmdDelay;
|
||||
};
|
||||
|
||||
#define MODBUSTCP ModbusTCP::instance()
|
||||
class ModbusTCP
|
||||
{
|
||||
static ModbusTCP* uniqueInstance;
|
||||
public:
|
||||
static ModbusTCP* instance();
|
||||
QString ipAddr_electric_resistance;
|
||||
unsigned int sockfd;
|
||||
unsigned int sockfd_fl;
|
||||
unsigned int sockfd_record;
|
||||
unsigned int sockfd_electric_resistance;
|
||||
char RFID[50];
|
||||
unsigned short height;
|
||||
unsigned short shangReadAddr;
|
||||
unsigned short shangWriteAddr;
|
||||
unsigned short shangReadRFIDAddr;
|
||||
unsigned short xiaWriteHeightAddr;
|
||||
unsigned short shangWriteHeartbeatAddr;
|
||||
unsigned short xiaReadAddr;
|
||||
unsigned short xiaWriteAddr;
|
||||
unsigned short xiaReadStsAddr;
|
||||
unsigned short ReadTransferPLCStsAddr;
|
||||
|
||||
unsigned short InitAddr;
|
||||
unsigned short RunAddr;
|
||||
unsigned short StopAddr;
|
||||
unsigned short ClearAlarmAddr;
|
||||
|
||||
|
||||
bool connFlag{true};
|
||||
int PLCSts[2];
|
||||
int TransferPLCSts;
|
||||
PLC_COMMAND TransferPLCCmd;
|
||||
PLC_COMMAND SeparatePLCCmd;
|
||||
CRITICAL_SECTION mCsRead;
|
||||
CRITICAL_SECTION mCsRead_fl;
|
||||
|
||||
float array_pos[1000][2];
|
||||
private:
|
||||
QString ipAddr;
|
||||
QString ipAddr_fl;
|
||||
QString ipAddr_record;
|
||||
|
||||
unsigned short port;
|
||||
|
||||
unsigned short shangReadVacuumAddr;
|
||||
unsigned short shangWriteVacuumAddr;
|
||||
|
||||
|
||||
unsigned short xiaWriteVacuumAddr;
|
||||
|
||||
unsigned short _seq_modbus;
|
||||
unsigned short _seq_modbus_fl;
|
||||
public:
|
||||
ModbusTCP();
|
||||
~ModbusTCP(void);
|
||||
public:
|
||||
bool ConnPLC();
|
||||
bool ConnPLC_fl();
|
||||
bool ConnPLC_force();
|
||||
bool ConnPLC_electric_resistance();
|
||||
bool CloseConn();
|
||||
bool CloseConn_fl();
|
||||
bool CloseConn_record();
|
||||
bool CloseConn_electric_resistance();
|
||||
int SendCmdRead(unsigned int sockfd,char *data, unsigned short data_len);
|
||||
int SendCmdWrite(unsigned int sockfd,char *data, unsigned short data_len);
|
||||
int SendCmdRead_fl(unsigned int sockfd,char *data, unsigned short data_len);
|
||||
int SendCmdWrite_fl(unsigned int sockfd,char *data, unsigned short data_len);
|
||||
int DataDecode(char *data, int len);
|
||||
int ModbusWrite(unsigned char cmd,unsigned short addr, unsigned short data);
|
||||
int ModbusWrite_fl(unsigned char cmd,unsigned short addr, unsigned short data);
|
||||
int ModbusWrite_force(char * data, int len);
|
||||
int ModbusWrite_electric_resistance(char * data, int len, char * rev_buf);
|
||||
int ModbusRead(unsigned short addr,int dataLen);
|
||||
int ModbusRead_fl(unsigned short addr,int dataLen);
|
||||
int getModbusPara(QString DevName);
|
||||
int Heartbeat(void);
|
||||
int Heartbeat_fl(void);
|
||||
int TransferPLCRun(unsigned short addr,int delay);
|
||||
int SeparatePLCRun(unsigned short addr,int delay);
|
||||
bool stopFlag;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif // MODBUSTCP_H
|
||||
Reference in New Issue
Block a user