If you have seen this post without having read the previous one (https://www.thematic-learning.com/chassis-arm-electronic-integration-i/) it may be difficult to understand all the information posted.
The goal of this phase of the design is to connect the nodeMCU with a web page on the thematic-learning.com server. In the future we will work with an API-rest and a service that will send GCode commands to the rover.
We are also trying to communicate arduinos via serial because could be important to have several Arduinos working in the same system.
We have solved the Internet access through an access point with a smartphone. The smartphone in the future could also establish a videoconference and the remote control of the sensor could be heard and seen. In the previous image we can see how the nodeMCU is now connected to our server on the Internet.
We had several brainstorming sessions to decide which architecture and electronic system would be the best for our rover and here you have one of the results of these brainstormings:
We have divided the system into three parts. In the first (the right area), the operator or person assigned to command the rover will have a navigator with a dashboard through which they can move the rover and the arm.
In the middle (middleware) we are going to use a cloud system which will have a web application made either with ReactJS or with another framework. This would be the frontend that will interact with the user. In the backend of the cloud part, we will have a service on the web server either performed through an API rest or NodeJS. This service will exchange information in JSON format with the web application. In that JSON exchange, the commands will be encoded in GCODE format.
In the section of the rover (left side) we will place a telephone to which we will install an access point with a specific name and password. The nodeMCU will connect to that access point and download the commands that the user has been sending to the rover one by one and executing them.
The nodeMCU will communicate via serial with the Arduino Mega which is responsible for moving the motors and the arm.