EasyManuals Logo

Embedded Systems LogicMachine5 User Manual

Default Icon
291 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #212 background imageLoading...
Page #212 background image
212
30.
mb:setregisters(id - 1, value)
31.
end
32.
end
33.
end
34.
35.
-- coil write callback
36.
function mbwritecoils(coil, value)
37.
local addr = coils[ coil + 1 ]
38.
if addr then
39.
grp.write(addr, value, dt.bool)
40.
end
41.
end
42.
43.
-- register write callback
44.
function mbwriteregisters(register, value)
45.
local addr = registers[ register + 1 ]
46.
if addr then
47.
grp.write(addr, value, regdt[ register + 1])
48.
end
49.
end
50.
51.
-- knx group monitor, handles group writes
52.
knxclient = eibdgm:new({ timeout = 0.1 })
53.
knxclient:sethandler('groupwrite', knxgroupwrite)
54.
55.
-- modbus slave, listen on all interfaces and default port 502
56.
mb = luamodbus.tcp()
57.
mb:open('0.0.0.0', 502)
58.
59.
-- setting slave id is optional
60.
-- mb:setslave(1)
61.
62.
mb:setreceivetimeout(0.1)
63.
mb:setmapping(#coils, 0, #registers, 0)
64.
65.
-- init coils
66.
for id, addr in ipairs(coils) do
67.
value = grp.getvalue(addr)
68.
mb:setcoils(id - 1, value)
69.
end
70.
71.
-- init registers
72.
for id, addr in ipairs(registers) do
73.
value = grp.getvalue(addr)
74.
mb:setregisters(id - 1, value)
75.
end
76.
77.
-- set callbacks for coil and register write
78.
mb:setwritecoilcb(mbwritecoils)
79.
mb:setwriteregistercb(mbwriteregisters)

Table of Contents

Other manuals for Embedded Systems LogicMachine5

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Embedded Systems LogicMachine5 and is the answer not in the manual?

Embedded Systems LogicMachine5 Specifications

General IconGeneral
BrandEmbedded Systems
ModelLogicMachine5
CategoryDimmer
LanguageEnglish

Related product manuals