处理io模版

This commit is contained in:
anlicheng 2025-06-28 22:50:47 +08:00
parent 4a3f302308
commit f9910a23de
3 changed files with 5 additions and 4 deletions

View File

@ -48,7 +48,7 @@ start_link(ParentPid, Device = #modbus_device{}) when is_pid(ParentPid) ->
{stop, Reason :: term()} | ignore). {stop, Reason :: term()} | ignore).
init([ParentPid, Device = #modbus_device{metrics = Metrics0, poll_interval = PollInterval}]) -> init([ParentPid, Device = #modbus_device{metrics = Metrics0, poll_interval = PollInterval}]) ->
lager:debug("device is: ~p", [Device]), lager:warning("device metrics is: ~p", [Metrics0]),
%% %%
MetricsMap = maps:from_list(lists:map(fun(Metric0 = #modbus_metric{name = Name}) -> {Name, Metric0} end, Metrics0)), MetricsMap = maps:from_list(lists:map(fun(Metric0 = #modbus_metric{name = Name}) -> {Name, Metric0} end, Metrics0)),

View File

@ -83,15 +83,16 @@ start_link(AST = #ast{}) ->
%% gen_statem:start_link/[3,4], this function is called by the new %% gen_statem:start_link/[3,4], this function is called by the new
%% process to initialize. %% process to initialize.
init([AST = #ast{modbus = Modbus = #modbus{error_log = ErrorLog, access_log = AccessLog}, device_ios = IOs, devices = Devices, alarms = Alarms}]) -> init([AST = #ast{modbus = Modbus = #modbus{error_log = ErrorLog, access_log = AccessLog}, device_ios = IOs, devices = Devices, alarms = Alarms}]) ->
lager:debug("[modbus_service] ast is: ~p", [AST]), %lager:debug("[modbus_service] ast is: ~p", [AST]),
lager:debug("[modbus_service] io is: ~p", [IOs]), lager:debug("[modbus_service] io is: ~p", [IOs]),
lager:debug("[modbus_service] devices is: ~p", [Devices]), %lager:debug("[modbus_service] devices is: ~p", [Devices]),
%% %%
erlang:start_timer(0, self(), modbus_connect), erlang:start_timer(0, self(), modbus_connect),
%% %%
DevicesPids = lists:map(fun(Device = #modbus_device{slave_id = SlaveId}) -> DevicesPids = lists:map(fun(Device = #modbus_device{slave_id = SlaveId}) ->
lager:debug("merge result is: ~p", [merge_io(Device, IOs)]),
{ok, DevicePid} = modbus_device:start_link(self(), merge_io(Device, IOs)), {ok, DevicePid} = modbus_device:start_link(self(), merge_io(Device, IOs)),
{SlaveId, DevicePid} {SlaveId, DevicePid}
end, Devices), end, Devices),

View File

@ -76,7 +76,7 @@ device boiler_controller {
model "Siemens S7-1200"; model "Siemens S7-1200";
description "Main boiler controller"; description "Main boiler controller";
io t1; device_io t1;
# 写入控制 # 写入控制
controls { controls {