• sales

    +86-0755-88291180

Python HTTP Request Communication

Python HTTP Request Communication

This chapter introduces how to use a Python demo to communicate with the robotic arm through HTTP requests.
HTTP (Hypertext Transfer Protocol) is a protocol for data communication on the Web, which is an object-oriented protocol on the application layer. It realizes wireless communication mainly based on the WiFi module in a simple, flexible Request-Response model.
Before running the Python demo, you need to install Python on your systems, configure the Python virtual environment, and install all the packages needed for demos. For more details, you can refer to RoArm-M2-S Python UART Communication.
There are four Python demos on the RoArm-M2-S. The Python demo for HTTP request communication is http_simple_ctrl.py as shown below:

import requests
import argparse


def main():
    parser = argparse.ArgumentParser(description='Http JSON Communication')
    parser.add_argument('ip', type=str, help='IP address: 192.168.10.104')

    args = parser.parse_args()

    ip_addr = args.ip

    try:
        while True:
            command = input("input your json cmd: ")
            url = "http://" + ip_addr + "/js?json=" + command
            response = requests.get(url)
            content = response.text
            print(content)
    except KeyboardInterrupt:
        pass


if __name__ == "__main__":
    main()

Before running the demo, you need to confirm the IP address of the robotic arm, which is related to the WiFi mode of the robotic arm. For more details, you can refer to RoArm-M2-S WIFI Configuration.

  • If the WiFi mode of the robotic arm is in AP mode, the IP address is 192.168.4.1.
  • If the WiFi mode of the robotic arm is in STA mode, the IP address can be obtained from the OLED screen.

Using the following commands to run the HTTP for communication demo request, The IP address in the command should be changed to the IP address of your robotic arm.

python http_simple_ctrl.py 192.168.4.1

Note: In either mode, the robotic arm needs to be on the same LAN as the device on which the script is running.
RoArm-M2-S Python HTTP Request Communication.png
After running, you can view the returned information, and then input the JSON commands, or you can get the feedback from the robotic arm for communication.
For more details, you can refer to RoArm-M2-S JSON Command Meaning.

Demo

TAG: Raspberry Pi 5 ESP32-C5 1.69inch LCD For Xiaozhi AI Development Board Display 240×280 1.69 inch TouchScreen ESP32-P4 Mini Core Development Board C6 N16R32/N32R32 PSRAM 32MB With USB-HUB / CSI Camera Port / MIPI DSI Display Port 7.5 inch Passive NFC e-Paper BW Display 7.5inch E-ink Screen No Need Battery Wireless Powered Data Transfer ESP32-S3 AI Voice Dialogue Robot Mechanical Dog Development Board Toy Tabletop Pet Deepseek ESP32-S3 1.28inch AI Machine Vision Kit OAK-D-POE JPEG Encoder 12MP IP67 Waterproof 4TOPS OpenCV Camera Raspberry Pi Handheld Linux Terminal 3.5inch TouchScreen 640x480 Portable Development ESP32-S3 Round Screen IMX462 ESP32 S3 Development Board 1.9 inch LCD Capacitive Touch Screen 1.9inch Display 170×320 N16R8 Raspberry Pi CM5 Gigabit/2.5G Dual Ethernet Expansion Board with RJ45 GPIO IO Base ESP32 desktop trinket UGV Rover ROS2 PT AI OpenCV Robot Car MediaPipe For Jetson Orin Nano Raspberry-Pi-ESP32-Pico-Display-image-1.83inch-LCD-NV3030B-ADD-NEW-Picture ESP32 C6 Development Board 1.28 inch LCD Touch Screen 240x240 CST816S SD card slot ESP32 ST7789 Raspberry Pi 5 Raspberry Pi Pico 2 RP2350 2 inch LCD Capacitive TouchScreen Development Board 240x320 Display QMI8658 6-Axis /OV5640 Camera /SD /Battery Port 0.96inch Transparent OLED 128×64 SSD1312 For Arduino/Raspberry Pi /ESP32 /STM32