Skip to content

Commit 5fc4558

Browse files
authored
Merge pull request #4 from ModbusScope/update
Update (port to ModbusSim)
2 parents 80b11c6 + 08ff191 commit 5fc4558

File tree

11 files changed

+51
-45
lines changed

11 files changed

+51
-45
lines changed

.coderabbit.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ reviews:
99
review_status: true
1010
collapse_walkthrough: false
1111
changed_files_summary: false
12+
sequence_diagrams: false
1213
estimate_code_review_effort: false
1314
auto_review:
1415
enabled: true

ModbusSim.png

59.9 KB
Loading

ModbusTestSlave.png

-31.2 KB
Binary file not shown.

README.md

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,14 @@
1-
# Build status
2-
[![Build status](https://ci.appveyor.com/api/projects/status/v7ysjn9c2koy1tb8?svg=true)](https://ci.appveyor.com/project/jgeudens/modbustestslave)
1+
<img src="./misc/icon/icon-256x256.png" alt="modbussim logo" title="ModbusSim" align="right" height="150" />
32

4-
# What is ModbusTestSlave
5-
ModbusTestSlave is an application that can be used to test a modbus master. The application consists of 2 main set of modules. A GUI-less part that contains all logic that can also be used in automated tests. The second part is a GUI that can be used for manual testing.
3+
Build status: [![Build](https://github.com/ModbusScope/ModbusSim/actions/workflows/ccpp.yml/badge.svg?branch=master)](https://github.com/ModbusScope/ModbusSim/actions/workflows/ccpp.yml)
64

7-
![ModbusTestSlave demo](ModbusTestSlave.png)
5+
# What is ModbusSim
6+
ModbusSim is a Modbus slave test application for validating Modbus master implementations.
7+
8+
Key features:
9+
10+
- Implements multiple configurable holding registers (values can be automatically incremented).
11+
- Generates a sine-wave signal as register values.
12+
- Can inject configurable communication errors to exercise master error handling.
13+
14+
![ModbusSim demo](ModbusSim.png)

misc/icon/Icons8_flat_sim_card.svg

Lines changed: 18 additions & 15 deletions
Loading

misc/icon/icon-256x256.png

5.75 KB
Loading

misc/icon/icon-64x64.png

-1.4 KB
Binary file not shown.

scripts/deploy_linux.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ set -ex
33

44
# Copy assets
55
cp misc/ModbusSim.desktop release/bin/linux/
6-
cp misc/icon/icon-64x64.png release/bin/linux/ModbusSim.png
6+
cp misc/icon/icon-256x256.png release/bin/linux/ModbusSim.png
77
cd release/bin/linux/
88

99
# now, build AppImage using linuxdeploy and linuxdeploy-plugin-qt

src/mainwindow.cpp

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,11 @@
22

33
#include "ui_mainwindow.h"
44

5+
#include <QDebug>
56
#include <QModbusTcpServer>
67
#include <QUrl>
7-
#include <QDebug>
88

9-
MainWindow::MainWindow(QWidget *parent) :
10-
QMainWindow(parent),
11-
_pUi(new Ui::MainWindow)
9+
MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), _pUi(new Ui::MainWindow)
1210
{
1311
_pUi->setupUi(this);
1412

@@ -65,10 +63,8 @@ MainWindow::MainWindow(QWidget *parent) :
6563
/** Setup registerView **/
6664
_pUi->tblRegData->setModel(_pRegisterDataModel);
6765
_pUi->tblRegData->verticalHeader()->show();
68-
_pUi->tblRegData->horizontalHeader()->show(); // Not sure yet (show or not to show?)
69-
70-
/* Don't stretch columns, resize to contents */
71-
_pUi->tblRegData->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
66+
_pUi->tblRegData->horizontalHeader()->show();
67+
_pUi->tblRegData->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
7268

7369
QList<uint> registerList = QList<uint>() << 0 << 1 << 2 << 3 << 4;
7470
_pSlaveData->setRegisterState(registerList, true);
@@ -80,7 +76,7 @@ MainWindow::MainWindow(QWidget *parent) :
8076
_pSineGraph->setPeriod(10000);
8177

8278
QString windowCaption;
83-
windowCaption = QString("ModbusTestSim");
79+
windowCaption = QString("ModbusSim");
8480

8581
setWindowTitle(windowCaption);
8682
}

src/mainwindow.h

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
#ifndef MAINWINDOW_H
22
#define MAINWINDOW_H
33

4-
#include <QMainWindow>
54
#include <QButtonGroup>
5+
#include <QMainWindow>
66

7-
#include "testslavemodbus.h"
87
#include "testslavedata.h"
8+
#include "testslavemodbus.h"
99

10-
#include "registerdatamodel.h"
1110
#include "incgraph.h"
11+
#include "registerdatamodel.h"
1212
#include "sinegraph.h"
1313

1414
namespace Ui {
@@ -20,7 +20,7 @@ class MainWindow : public QMainWindow
2020
Q_OBJECT
2121

2222
public:
23-
explicit MainWindow(QWidget *parent = nullptr);
23+
explicit MainWindow(QWidget* parent = nullptr);
2424
~MainWindow();
2525

2626
private slots:
@@ -34,8 +34,7 @@ private slots:
3434
void handleRequestProcessed();
3535

3636
private:
37-
38-
Ui::MainWindow *_pUi;
37+
Ui::MainWindow* _pUi;
3938

4039
bool _bAutoInc;
4140

@@ -47,10 +46,10 @@ private slots:
4746
QButtonGroup _exceptionGroup;
4847
QButtonGroup _errorRecurrenceGroup;
4948

50-
TestSlaveModbus *_pSlaveModbus;
51-
TestSlaveData *_pSlaveData;
49+
TestSlaveModbus* _pSlaveModbus;
50+
TestSlaveData* _pSlaveData;
5251

53-
RegisterDataModel *_pRegisterDataModel;
52+
RegisterDataModel* _pRegisterDataModel;
5453
};
5554

5655
#endif // MAINWINDOW_H

0 commit comments

Comments
 (0)