Giter Club home page Giter Club logo

Comments (6)

kevinherron avatar kevinherron commented on August 30, 2024 2

SlaveId and UnitId are the same thing, just different terminology.

Word inversion and interpreting the bytes as unsigned are something your application would choose to do after it go the data from the response. They aren't part of Modbus proper, so not something this library implements. But they're not uncommon.

In this case it's pretty easy since the data is in a ByteBuf... something like: long myValue = response.getRegisters().order(ByteOrder.LITTLE_ENDIAN).readUnsignedInt()

from modbus.

kevinherron avatar kevinherron commented on August 30, 2024

I'm not sure if you're talking about just reading some registers, e.g. from the Holding Registers table, which is covered in the README example:

ModbusTcpMasterConfig config = new ModbusTcpMasterConfig.Builder("localhost").build();
ModbusTcpMaster master = new ModbusTcpMaster(config);

CompletableFuture<ReadHoldingRegistersResponse> future =
        master.sendRequest(new ReadHoldingRegistersRequest(0, 10), 0);

future.thenAccept(response -> {
    System.out.println("Response: " + ByteBufUtil.hexDump(response.getRegisters()));

    ReferenceCountUtil.release(response);
});

Or if you're talking about something else?

from modbus.

c-val avatar c-val commented on August 30, 2024

Well, basically I've got

from modbus.

c-val avatar c-val commented on August 30, 2024

a "DIRIS G" communication gateways, with all information "made available on the Ethernet network via Modbus TCP".
I've got the IP and the port is regularly set to 502.
I'd like to read the values knowing "slave ID", "Register","register size" and "function code"

from modbus.

kevinherron avatar kevinherron commented on August 30, 2024

Well without some examples I can't really help you, but that's more than enough information to get going with if you understand anything about Modbus. You might want to skim the specification - it's not very lengthy. At the very least you'll come away knowing which function code means which kind of request.

from modbus.

c-val avatar c-val commented on August 30, 2024

Hi Kevin, thank you for the spec.
I know that want to issue a request with function code 3 (so ReadHoldingRegistersRequest) to a distant Modbus server, With Register "18442" which I understand is the address in ReadHoldingRegistersRequest's fields.
I must specify a "slave ID". Which I don't find, so I assumed it was master.sendRequest's "unitID" field.
With a Register's length of 2 I get the following :
master.sendRequest(new ReadHoldingRegistersRequest(18442, 2), 4);
I get the following response : 0000c346
The thing is, in my ModBus Desktop Client, I have to set "Word Inversion" and "Not Signed" along with "32 bits display".
Does word inversion work with your code?
Thanks

from modbus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.