Добрый. Тоже столкнулся с ошибка EXC_HW в библиотеке Modbus.lib.
Код:
Read := SysComWrite(ComHandle, ADR(DataBuf), DataSize, 0) = DataSize;
IF Read = FALSE THEN				(* передача кадра не состоялась*)
	Exception := EXC_HW;			(* аппаратная ошибка *)
	Complete := TRUE;				(* установить признак готовности результата *)
	Active := FALSE;				(* снять признак активности цикла обмена *)
	RETURN;						(* завершение по ошибке *)
END_IF
Т.е. проблема с записью через SysComWrite.
Может есть решение данной проблемы?