2 #ifndef ModbusClient_H_
3 #define ModbusClient_H_
9 #include "Configuration.h"
10 #include "PassiveTimer.h"
11 #include "ModbusTypes.h"
32 ModbusRTU::ModbusData start, ModbusRTU::ModbusData count )
41 ModbusRTU::ModbusData start, ModbusRTU::ModbusData count )
51 ModbusRTU::ModbusData start, ModbusRTU::ModbusData count )
60 ModbusRTU::ModbusData start, ModbusRTU::ModbusData count )
69 ModbusRTU::ModbusData reg,
bool cmd )
78 ModbusRTU::ModbusData reg, ModbusRTU::ModbusData data )
91 ModbusRTU::DiagnosticsSubFunction subfunc,
92 ModbusRTU::ModbusData dat = 0 )
99 ModbusRTU::ModbusByte devID,
100 ModbusRTU::ModbusByte objID )
113 ModbusRTU::ModbusByte hour, ModbusRTU::ModbusByte min, ModbusRTU::ModbusByte sec,
114 ModbusRTU::ModbusByte day, ModbusRTU::ModbusByte mon, ModbusRTU::ModbusByte year,
115 ModbusRTU::ModbusByte century )
126 ModbusRTU::ModbusData numpack, timeout_t part_timeout_msec = 2000 )
134 void fileTransfer( ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusData idFile,
135 const char* save2filename, timeout_t part_timeout_msec = 2000 )
153 void initLog( std::shared_ptr<uniset::Configuration> conf,
const std::string& name,
const std::string& logfile =
"" );
154 void setLog( std::shared_ptr<DebugStream> dlog );
156 inline void setCRCNoCheckit(
bool set )
160 inline bool isCRCNoCheckit()
const
165 virtual void cleanupChannel() {}
175 virtual size_t getNextData(
unsigned char* buf,
size_t len ) = 0;
180 virtual ModbusRTU::mbErrCode sendData(
unsigned char* buf,
size_t len ) = 0;
183 virtual ModbusRTU::mbErrCode
query( ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusMessage& msg,
184 ModbusRTU::ModbusMessage& qreply, timeout_t timeout ) = 0;
188 virtual ModbusRTU::mbErrCode
send( ModbusRTU::ModbusMessage& msg );
191 virtual ModbusRTU::mbErrCode
recv( ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusByte qfunc,
192 ModbusRTU::ModbusMessage& rbuf, timeout_t timeout );
194 virtual ModbusRTU::mbErrCode recv_pdu( ModbusRTU::ModbusByte qfunc,
195 ModbusRTU::ModbusMessage& rbuf, timeout_t timeout );
204 std::shared_ptr<DebugStream> dlog;
206 void printProcessingTime();
217 #endif // ModbusClient_H_
Пассивный таймер
Definition: PassiveTimer.h:90
ModbusRTU::WriteOutputRetMessage write10(ModbusRTU::WriteOutputMessage &msg)
Definition: ModbusClient.cc:162
ModbusRTU::SetDateTimeRetMessage setDateTime(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusByte hour, ModbusRTU::ModbusByte min, ModbusRTU::ModbusByte sec, ModbusRTU::ModbusByte day, ModbusRTU::ModbusByte mon, ModbusRTU::ModbusByte year, ModbusRTU::ModbusByte century)
Definition: ModbusClient.cc:204
Definition: CallbackTimer.h:29
Definition: ModbusTypes.h:1059
Definition: ModbusTypes.h:824
Definition: ModbusClient.h:18
ModbusRTU::ForceSingleCoilRetMessage write05(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusData reg, bool cmd)
Definition: ModbusClient.cc:118
Definition: ModbusTypes.h:784
virtual size_t getNextData(unsigned char *buf, size_t len)=0
Definition: ModbusTypes.h:878
virtual ModbusRTU::mbErrCode send(ModbusRTU::ModbusMessage &msg)
Definition: ModbusClient.cc:1344
timeout_t aftersend_msec
Definition: ModbusClient.h:198
void fileTransfer(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusData idFile, const char *save2filename, timeout_t part_timeout_msec=2000)
Definition: ModbusClient.cc:227
Definition: ModbusTypes.h:1583
Definition: ModbusTypes.h:968
Definition: ModbusTypes.h:1156
ModbusRTU::MEIMessageRetRDI read4314(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusByte devID, ModbusRTU::ModbusByte objID)
Definition: ModbusClient.cc:189
ModbusRTU::ReadCoilRetMessage read01(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusData start, ModbusRTU::ModbusData count)
Definition: ModbusClient.cc:60
ModbusRTU::DiagnosticRetMessage diag08(ModbusRTU::ModbusAddr addr, ModbusRTU::DiagnosticsSubFunction subfunc, ModbusRTU::ModbusData dat=0)
Definition: ModbusClient.cc:174
Definition: ModbusTypes.h:356
timeout_t replyTimeOut_ms
Definition: ModbusClient.h:197
Definition: ModbusRTUErrors.h:40
Definition: ModbusTypes.h:1223
ModbusRTU::WriteSingleOutputRetMessage write06(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusData reg, ModbusRTU::ModbusData data)
Definition: ModbusClient.cc:134
timeout_t sleepPause_usec
Definition: ModbusClient.h:199
Definition: ModbusTypes.h:705
ModbusRTU::FileTransferRetMessage partOfFileTransfer(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusData idFile, ModbusRTU::ModbusData numpack, timeout_t part_timeout_msec=2000)
Definition: ModbusClient.cc:318
void setSleepPause(timeout_t usec)
Definition: ModbusClient.h:148
virtual ModbusRTU::mbErrCode query(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusMessage &msg, ModbusRTU::ModbusMessage &qreply, timeout_t timeout)=0
void setTimeout(timeout_t msec)
Definition: ModbusClient.cc:48
int setAfterSendPause(timeout_t msec)
Definition: ModbusClient.cc:53
Definition: ModbusTypes.h:555
Definition: ModbusTypes.h:190
ModbusRTU::ReadInputStatusRetMessage read02(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusData start, ModbusRTU::ModbusData count)
Definition: ModbusClient.cc:74
ModbusRTU::ReadOutputRetMessage read03(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusData start, ModbusRTU::ModbusData count)
Definition: ModbusClient.cc:89
virtual void setChannelTimeout(timeout_t msec)=0
virtual ModbusRTU::mbErrCode recv(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusByte qfunc, ModbusRTU::ModbusMessage &rbuf, timeout_t timeout)
Definition: ModbusClient.cc:334
Definition: ModbusTypes.h:1416
ModbusRTU::ReadInputRetMessage read04(ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusData start, ModbusRTU::ModbusData count)
Definition: ModbusClient.cc:104
ModbusRTU::ForceCoilsRetMessage write0F(ModbusRTU::ForceCoilsMessage &msg)
Definition: ModbusClient.cc:149