update预览
This commit is contained in:
parent
d4d7c3ecd3
commit
406e294522
|
@ -2,3 +2,4 @@ void servo_init();
|
||||||
void servo_loop();
|
void servo_loop();
|
||||||
void servo_deg(int servoid, int deg);
|
void servo_deg(int servoid, int deg);
|
||||||
void move();
|
void move();
|
||||||
|
int getpos(int pin);
|
106
index.html
106
index.html
|
@ -6,13 +6,101 @@
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<form action='servo' method='post'>
|
<div class="container">
|
||||||
<button name='deg' value='0'>0</button>
|
<div class="buts">
|
||||||
<button name='deg' value='90'>90</button>
|
<div class="header">
|
||||||
<button name='deg' value='180'>180</button>
|
<button class="but" id="up">↑</button>
|
||||||
</form>
|
</div>
|
||||||
<form action='servo' method='post'>
|
<div class="center">
|
||||||
<input name='deg' />
|
<button class="but" id="left">←</button>
|
||||||
<button name='submit' value='submit'>设置</button>
|
<button class="but" id="down">↓</button>
|
||||||
</form>
|
<button class="but" id="right">→</button>
|
||||||
|
</div>
|
||||||
|
<div class="footer">
|
||||||
|
<button class="but" id="turn">顺时针</button>
|
||||||
|
<button class="but" id="reset">复位</button>
|
||||||
|
<button class="but" id="aturn">逆时针</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="senors">
|
||||||
|
<div class="senor">
|
||||||
|
<p id="ip">当前IP: 0.0.0.0</p>
|
||||||
|
</div>
|
||||||
|
<div class="senor">
|
||||||
|
<p id="bt">蓝牙未连接</p>
|
||||||
|
</div>
|
||||||
|
<div class="senor">
|
||||||
|
<p id="temp">当前温度: 0.00℃</p>
|
||||||
|
</div>
|
||||||
|
<div class="senor">
|
||||||
|
<p id="xa">X轴加速度: 0.0000000000</p>
|
||||||
|
<p id="ya">Y轴加速度: 0.0000000000</p>
|
||||||
|
<p id="za">Z轴加速度: 0.0000000000</p>
|
||||||
|
</div>
|
||||||
|
<div class="senor angle">
|
||||||
|
<p id="anglex">X轴角度: 0.00</p>
|
||||||
|
<p id="angley">Y轴角度: 0.00</p>
|
||||||
|
<p id="anglez">Z轴角度: 0.00</p>
|
||||||
|
</div>
|
||||||
|
<div class="senor">
|
||||||
|
<p id="bz">当前前方 <strong>无</strong> 障碍物</p>
|
||||||
|
</div>
|
||||||
|
<p class="copy">by 第 6 小组</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
padding-top: 20px;
|
||||||
|
background-color: black;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
div {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
|
||||||
|
.center,
|
||||||
|
.angle,
|
||||||
|
.footer {
|
||||||
|
flex-direction: row;
|
||||||
|
}
|
||||||
|
|
||||||
|
.but {
|
||||||
|
width: 128px;
|
||||||
|
height: 128px;
|
||||||
|
font-size: xx-large;
|
||||||
|
border-radius: 2px;
|
||||||
|
background-color: seashell;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cc {
|
||||||
|
width: 128px;
|
||||||
|
height: 128px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.senors {
|
||||||
|
margin-top: 20px;
|
||||||
|
font-size: xx-large;
|
||||||
|
}
|
||||||
|
|
||||||
|
.senor {
|
||||||
|
margin: 10px;
|
||||||
|
border: 1px solid white;
|
||||||
|
width: 500px;
|
||||||
|
padding: 15px;
|
||||||
|
border-radius: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.copy {
|
||||||
|
align-self: flex-end;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -17,4 +17,5 @@ lib_deps =
|
||||||
h2zero/NimBLE-Arduino@^1.4.1
|
h2zero/NimBLE-Arduino@^1.4.1
|
||||||
ottowinter/ESPAsyncWebServer-esphome@^3.0.0
|
ottowinter/ESPAsyncWebServer-esphome@^3.0.0
|
||||||
teckel12/NewPing@^1.9.5
|
teckel12/NewPing@^1.9.5
|
||||||
|
gitlab-airbornemint/Protothreads@^1.4.0-arduino.beta.1
|
||||||
monitor_speed = 115200
|
monitor_speed = 115200
|
||||||
|
|
41
src/main.cpp
41
src/main.cpp
|
@ -1,21 +1,50 @@
|
||||||
#include <Arduino.h>
|
#include <Arduino.h>
|
||||||
#include <servo.h>
|
#include <protothreads.h>
|
||||||
|
|
||||||
#include <bt.h>
|
#include <bt.h>
|
||||||
#include <web.h>
|
|
||||||
#include <ping.h>
|
#include <ping.h>
|
||||||
|
#include <servo.h>
|
||||||
|
#include <web.h>
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
Serial.begin(115200);
|
Serial.begin(115200);
|
||||||
servo_init();
|
servo_init();
|
||||||
bt_init();
|
// bt_init();
|
||||||
web_init();
|
// web_init();
|
||||||
ping_init();
|
ping_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
servo_loop();
|
servo_loop();
|
||||||
bt_loop();
|
// bt_loop();
|
||||||
web_loop();
|
// web_loop();
|
||||||
ping_loop();
|
ping_loop();
|
||||||
|
String co = Serial.readString();
|
||||||
|
if (co.length() != 0) {
|
||||||
|
int pin = co[0] - '0';
|
||||||
|
int m = co[1] - '0';
|
||||||
|
Serial.println(co);
|
||||||
|
switch (m) {
|
||||||
|
case 1:
|
||||||
|
servo_deg(pin, getpos(pin) + 15);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
servo_deg(pin, getpos(pin) - 15);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
servo_deg(0, 180);
|
||||||
|
delay(500);
|
||||||
|
servo_deg(1, 180);
|
||||||
|
delay(500);
|
||||||
|
servo_deg(2, 180);
|
||||||
|
delay(500);
|
||||||
|
servo_deg(3, 180);
|
||||||
|
delay(500);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
servo_deg(pin, 90);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
delay(100);
|
delay(100);
|
||||||
}
|
}
|
|
@ -22,6 +22,8 @@ void servo_init() {
|
||||||
for (int i = 0; i < 8; i++) {
|
for (int i = 0; i < 8; i++) {
|
||||||
servo[i].attach(servoPin[i], minUs, maxUs);
|
servo[i].attach(servoPin[i], minUs, maxUs);
|
||||||
}
|
}
|
||||||
|
// servo[4].attach(servoPin[4], minUs, maxUs);
|
||||||
|
// servo[6].attach(servoPin[6], minUs, maxUs);
|
||||||
pwm.attachPin(15, 10000);
|
pwm.attachPin(15, 10000);
|
||||||
servo_deg(8, 90);
|
servo_deg(8, 90);
|
||||||
}
|
}
|
||||||
|
@ -69,7 +71,7 @@ void servo_deg(int servoid, int deg) {
|
||||||
for (int i = 0; i < 8; i++) {
|
for (int i = 0; i < 8; i++) {
|
||||||
servo[i].write(deg);
|
servo[i].write(deg);
|
||||||
pos[i] = deg;
|
pos[i] = deg;
|
||||||
delay(100);
|
delay(1000);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
servo[servoid].write(deg);
|
servo[servoid].write(deg);
|
||||||
|
@ -79,22 +81,26 @@ void servo_deg(int servoid, int deg) {
|
||||||
|
|
||||||
void move() {
|
void move() {
|
||||||
// for (int j = 0; j < 4; j++) {
|
// for (int j = 0; j < 4; j++) {
|
||||||
servo_deg(0, pos[0] + 45);
|
servo_deg(4, pos[4] + 45);
|
||||||
delay(300);
|
delay(300);
|
||||||
servo_deg(2, pos[2] - 45);
|
servo_deg(6, pos[6] - 45);
|
||||||
delay(300);
|
delay(300);
|
||||||
// servo_deg(0, pos[0] - 45);
|
// servo_deg(0, pos[0] - 45);
|
||||||
// delay(300);
|
// delay(300);
|
||||||
// servo_deg(2, pos[2] + 45);
|
// servo_deg(2, pos[2] + 45);
|
||||||
// delay(300);
|
// delay(300);
|
||||||
// servo_deg(1, pos[1] + 45);
|
// servo_deg(1, pos[1] + 45);
|
||||||
// delay(300);
|
// delay(300);
|
||||||
// servo_deg(3, pos[3] - 45);
|
// servo_deg(3, pos[3] - 45);
|
||||||
// delay(300);
|
// delay(300);
|
||||||
// servo_deg(1, pos[1] - 45);
|
// servo_deg(1, pos[1] - 45);
|
||||||
// delay(300);
|
// delay(300);
|
||||||
// servo_deg(3, pos[3] + 45);
|
// servo_deg(3, pos[3] + 45);
|
||||||
// delay(300);
|
// delay(300);
|
||||||
delay(500);
|
delay(500);
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int getpos(int pin){
|
||||||
|
return pos[pin];
|
||||||
|
}
|
|
@ -95,13 +95,14 @@ void web_init() {
|
||||||
} else {
|
} else {
|
||||||
servoid = 8;
|
servoid = 8;
|
||||||
}
|
}
|
||||||
servo_deg(servoid, deg);
|
|
||||||
ref_ret(request,
|
ref_ret(request,
|
||||||
"<!DOCTYPE html><html><head><meta http-equiv=\"refresh\" "
|
"<!DOCTYPE html><html><head><meta http-equiv=\"refresh\" "
|
||||||
"content=\"1; "
|
"content=\"1; "
|
||||||
"url='http://192.168.21.9'\" /></head><body><h1>Success. Back "
|
"url='http://192.168.21.9'\" /></head><body><h1>Success. Back "
|
||||||
"after 1 "
|
"after 1 "
|
||||||
"sencond.</h1></body></html>");
|
"sencond.</h1></body></html>");
|
||||||
|
servo_deg(servoid, deg);
|
||||||
} else {
|
} else {
|
||||||
notFound(request);
|
notFound(request);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue