Как отправить данные датчика от Arduino в качестве сервера на jsp на Tomcat? - PullRequest
0 голосов
/ 11 февраля 2020

У меня есть Arduino с щитом rnet. Я хочу отправить показания от ультразвукового датчика c для отображения на JSP, который находится на tomcat на моей локальной машине. Как я могу это сделать?

1 Ответ

1 голос
/ 11 февраля 2020

При использовании последовательного соединения Arduino вам необходимо использовать библиотеку Serial-Comm для вашего кода java, ниже приведена зависимость Maven:

<dependency>
   <groupId>com.fazecast</groupId>
   <artifactId>jSerialComm</artifactId>
   <version>[2.0.0,3.0.0)</version>
</dependency>

После этого упакуйте данные, полученные в объекте. и отправьте его на ваш JSP, используя:

request.setAttribute("key",object); 

, а затем l oop через ваш объект для отображения данных в пределах этих 2 ссылок ниже, может помочь вам сделать это:

Этот код поможет вам получить данные в коде java при условии, что Вы знаете, как отправить данные из кода Arduino:

    SerialPort[] ports = SerialPort.getCommPorts();
    System.out.println("Select a port:");
    int i = 1;
    for(SerialPort port : ports)
        System.out.println(i++ +  ": " + port.getSystemPortName());
    Scanner s = new Scanner(System.in);
    int chosenPort = s.nextInt();

    SerialPort serialPort = ports[chosenPort - 1];
    if(serialPort.openPort())
        System.out.println("Port opened successfully.");
    else {
        System.out.println("Unable to open the port.");
        return;
    }

    serialPort.setComPortTimeouts(SerialPort.TIMEOUT_READ_BLOCKING, 0, 0);

    Scanner data = new Scanner(serialPort.getInputStream());
    int value = 0;
    while(data.hasNextLine()){
        try{

        value = Integer.parseInt(data.nextLine());
        System.out.println(value);
    }

    catch(Exception e){}
}
System.out.println("Done.");
...