亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Arduino - 基于网络的操纵杆

组件和用品

Arduino UNO
× 1
适用于 Arduino 的 PHPoC WiFi 扩展板
× 1
Seeed SG90 微型伺服电机
× 2
跳线
× 1

关于这个项目

如果你是初学者,你可以学习:

  • Arduino - 伺服电机。
  • Arduino - 操纵杆

我们可以通过这个项目控制一切,但我以伺服电机为例。

演示

接线

  • 在 Arduino 上堆叠 PHPoC WiFi 扩展板或 PHPoC 扩展板
  • 将两个伺服电机的 GND 和 VCC 引脚分别连接到 Arduino 的 GND 和 5V。 (arduino 的 IOREF 引脚可以像 5V 引脚一样使用)
  • 将两个伺服电机的引脚信号分别连接到 Arduino 的引脚 8 和引脚 9。

数据流

Web 浏览器 ---> PHPoC WiFi Shield ---> Arduino

Web 浏览器上的 Web 应用程序将通过 WebSocket 将触摸或点击事件的坐标(缩放后)发送到 PHPoC 盾。收到数据后,PHPoC shield 自动将其传递给 Arduino。 Arduino根据从PHPoC Shield接收到的数据控制两个伺服电机。

注意: PHPoC shield 有一个内置程序可以将数据从网络浏览器传递到 Arduino。因此,我们不需要关心它。

我们需要做什么

  • 为 PHPoC shield 设置 Wifi 信息(SSID 和密码)
  • 将新 UI 上传到 PHPoC shield
  • 编写 Arduino 代码

为 PHPoC Shield 设置 Wifi 信息

请参阅此说明。

将新的 Web UI 上传到 PHPoC Shield

  • 下载 PHPoC 源代码 remote_joystick.php(在代码部分)。
  • 根据此说明使用 PHPoC 调试器将其上传到 PHPoC shield。

编写 Arduino 代码

  • 在 Arduino IDE 上为 Arduino 安装 PHPoC 库(请参阅说明)
  • 在代码部分查看源代码。

试试吧

  • 单击 Arduino IDE 上的串行按钮以查看 IP 地址。
  • 打开网页浏览器,输入http:// replace_ip_address /remote_joystick.php
  • 点击连接按钮并进行测试。

相似的项目但不同的硬件平台

这个项目做了同样的工作,但它使用了其他硬件平台

适合初学者的最佳 Arduino 入门套件

查看适合初学者的最佳 Arduino 套件

函数参考

  • Arduino - 伺服库
  • Servo.attach()
  • Servo.write()
  • Servo.writeMicroseconds()
  • Servo.read()
  • Servo.attached()
  • Servo.detach()
  • Serial.begin()
  • Serial.println()

代码

  • Arduino 代码
  • 网络用户界面 (remote_joystick.php)
Arduino 代码Arduino
#include "SPI.h"#include "Phpoc.h"#include PhpocServer server(80);Servoservo_x;Servoservo_y;void setup() { Serial.begin(9600);而(!串行); Phpoc.begin(PF_LOG_SPI | PF_LOG_NET); //Phpoc.begin(); server.beginWebSocket("web_joystick"); Serial.print("WebSocket 服务器地址:"); Serial.println(Phpoc.localIP());伺服_x.attach(8); // 将引脚 8 上的伺服器连接到伺服器对象servo_y.attach(9); // 将引脚 9 上的伺服器连接到伺服器对象servo_x.write(90);伺服_y.write(90); }void loop() { // 等待新客户端:PhpocClient client =server.available(); if (client) { String data =client.readLine(); if(data){ int pos =data.indexOf(':'); long x =data.substring(0, pos).toInt(); long y =data.substring(pos+1).toInt(); Serial.print("x:"); Serial.print(x); Serial.print(", y:"); Serial.println(y); // 从 [-100 开始缩放; 100] 到 [0; 180]长角_x =(x + 100) * 180 /200;长角_y =(y + 100) * 180 /200;伺服_x.写(角度_x);伺服_y.write(angle_y); } }}
Web 用户界面 (remote_joystick.php)PHP
Arduino - PHPoC Shield

Arduino - 基于网络的操纵杆

WebSocket :null

示意图


制造工艺

  1. Arduino Spybot
  2. FlickMote
  3. 自制电视 B-Gone
  4. 主时钟
  5. 操纵杆控制的遥控车
  6. 摇杆游戏
  7. 找到我
  8. Arduino Power
  9. Arduino Nano:使用操纵杆控制 2 个步进电机
  10. Arduino - 基于网络的 MP3 播放器
  11. Tech-TicTacToe
  12. Arduino Quadruped