• 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: Sipeed SLogic 4IN1 USB Logic Analyzer 80M / DAPLink / CKLink Debugger Tool / UART Module Raspberry Pi Pico 2 RP2350 Core2350B Core Board PSRAM Raspberry Pi Pico 2 RP2350 1.75-inch AMOLED 1.75inch Round TouchScreen Display QMI8658 6-axis GPS Industrial Modbus POE ETH RJ45 To Relay 30CH RTU/Modbus TCP-Ethernet For IOT Luckfox Pico plus UART Serial TTL To RS232 B Built-In Protection Circuits Rail-mount Raspberry Pi 5 NVMe ESP32-P4 Module Core Board PSRAM 32MB Flash 16MB N16R32 Onboard ESP32-C6 Raspberry Pi 3.5 inch LCD F Display Capacitance TouchScreen 60fps ST7796 GT911 320x480 Also For Arduino/Pico2/ESP32/RP2040/RP2350 1.28 inch Round Rotary LCD Smart Screen 1.28inch Knob Display 240x240 Option Touch/No-Touch Raspberry Pi 5 JETSON NANO MINI Fan Raspberry Pi 3.97 inch e-Paper link (G) RYBW 800x480 For Arduino / Jetson / STM32 /ESP32 Jetson Nano Expansion Board Arducam UNO Minima RA4M1 ZERO Tiny SuperMini R7FA4M1 Board Compatible With R4 For Arduino ESP32 Thermal imaging ESP32 LVGL Sipeed NanoCluster Mini Cluster Board mini data center For Raspberry Pi CM45 / Computer /LM3H /M4N Tang Nano Series FPGA FAQ