Я пытаюсь подключиться к ретрансляционному устройству HHC-NET2D.
Это устройство позволяет подключаться к tcp-клиенту. Я не нашел решения, с помощью которого я могу отправить параметры на устройство. Если кто-то знает рекомендуемый способ установить соединение через tcp-клиент и отправить параметры, это будет полезно.
Поддержка
1. Поддержка TCP-сервера, TCP-клиента, UDP
2. Поддержка 4 клиентских подключений на TCP-сервере. Предположим, что локальный порт 5000. Порт 5000 может быть подключен к TCP-клиенту.
3. Поддержка протокола TCP MODBUS.
Управляющая команда
5. Направление " on1 " на HHC-NET2D включит Первое реле .
6. При отправке " on2 " на HHC-NET2D включится Второе реле .
7. При отправке « off1 » на HHC-NET2D включится Первое реле .
8. Направление " off2 " на HHC-NET2D включит Второе реле .
Подробнее здесь: https://es.aliexpress.com/item/32358735415.html
import 'dart:io';
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: HomeApp(),
);
}
}
class HomeApp extends StatefulWidget {
@override
_HomeAppState createState() => _HomeAppState();
}
class _HomeAppState extends State<HomeApp> {
Socket socket;
String name;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(name == null ? 'NO CONNECTED' : name),
),
body: Container(
child: Column(
children: <Widget>[
RaisedButton(
child: Text('Connect'),
onPressed: (){
connect();
},
),
RaisedButton(
child: Text('Send Data'),
onPressed: (){
sendData();
},
)
],
),
),
);
}
// Socket connection
void connect() {
Socket.connect("ipHere", portHere).then((Socket sock) {
socket = sock;
socket.listen(
dataHandler,
onError: errorHandler,
onDone: doneHandler,
cancelOnError: false
);
});
}
void dataHandler(data){
setState(() {
name = new String.fromCharCodes(data).trim();
});
}
void errorHandler(error, StackTrace trace){
print(error);
}
void doneHandler(){
socket.destroy();
}
void sendData(){
//socket.write(...)
}
}