Skip to content

Commit 06fe713

Browse files
Add files via upload
1 parent 534c825 commit 06fe713

File tree

43 files changed

+5718
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+5718
-0
lines changed
Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
/**
2+
Arduino 控制气泵 充放气状态 每次动作间隔 5秒
3+
4+
01AirPumpTest
5+
02DynamicBreath
6+
集成化气泵02——动态呼吸 https://www.bilibili.com/video/BV1WN411S7LJ
7+
气泵交互艺术——血液心脏 https://www.bilibili.com/video/BV1tT42117g6
8+
气泵交互艺术——神经元 https://www.bilibili.com/video/BV1VtsteRErj
9+
气泵交互艺术——棺柩心脏 https://www.bilibili.com/video/BV1Yz421y7xE
10+
02_2DoubleDynamicBreath
11+
集成化气泵02_2——双气泵动态呼吸 https://www.bilibili.com/video/BV1LW421c7mS
12+
02_3DoubleIndependentDynamicBreath
13+
02_4FourDynamicBreath
14+
集成化气泵02_3——四气泵(单个轮替动态呼吸) https://www.bilibili.com/video/BV14z421Q7Ku
15+
02_5FourIndependentDynamicBreath
16+
02_6SixIndependentDynamicBreath
17+
六气泵独立动态呼吸
18+
你知道气泵能用于什么交互艺术吗? https://www.bilibili.com/video/BV1uL411i7RL
19+
03HeartBeat
20+
集成化气泵03——模拟心跳可视化 https://www.bilibili.com/video/BV1FM4y177RU
21+
03_2DynamicBreathAndHeartBeat
22+
集成化气泵03_2——动态呼吸+心脏泵泵跳 https://www.bilibili.com/video/BV1TW421c7iU
23+
04_1PulseSensor
24+
集成化气泵04_1——心率存在感应1 https://www.bilibili.com/video/BV1xw4m1R7TN
25+
04_2MAX30102HeartRate
26+
集成化气泵04_2——心率存在感应2 https://www.bilibili.com/video/BV19u4m1M7Jr
27+
04_3MAX30100HeartRate
28+
集成化气泵04_3——心率存在感应3 https://www.bilibili.com/video/BV1UH4y1s7PV
29+
04_4DoubleAirPumpMAX30102HeartRate
30+
双头气泵登场,一个比两个气泵强? https://www.bilibili.com/video/BV14ZsfevEbZ
31+
04_5BluetoothHeartRateAirPump
32+
可被蓝牙控制,会根据心率分档位的集成化气泵? https://www.bilibili.com/video/BV1152SYzE4m
33+
05SoundSensor
34+
集成化气泵05——口吹气球 https://www.bilibili.com/video/BV1x8411D7kt
35+
05_2DecibelSoundSensor
36+
集成化气泵的新玩法,用来打氧? https://www.bilibili.com/video/BV1mn1LYCEg6
37+
06PressureSensor
38+
你知道“压力”如何可视化吗? https://www.bilibili.com/video/BV12m4y1H7sV
39+
06_2PressureSensorFourAirPump
40+
集成化气泵06_2——压力可视化(四气泵) https://www.bilibili.com/video/BV1Cj421R7fn
41+
07HX711WeightSensor
42+
重量可视化 Arduino HX711称重传感器 https://www.bilibili.com/video/BV1tN411B7hZ
43+
08HCSR04UltrasonicSensor
44+
超声波距离可视化 https://www.bilibili.com/video/BV19u4y1Q79C
45+
08_2HCSR04UltrasonicSensorFourAirPump
46+
集成化气泵08_2——超声波距离可视化(四气泵) https://www.bilibili.com/video/BV1hr42187fd
47+
09VL53L0TOFLaserSensor
48+
集成化气泵09——激光测距可视化气球 https://www.bilibili.com/video/BV1Wh4y1U76Z
49+
10DHT11TemperatureSensor
50+
集成化气泵10——温度可视化 https://www.bilibili.com/video/BV1g34y1G78t
51+
11DHT11HumilitySensor
52+
集成化气泵11——湿度可视化 https://www.bilibili.com/video/BV1Gp4y1u78p
53+
12HCSR501PIRSensor
54+
集成化气泵12——人体存在可视化 https://www.bilibili.com/video/BV1zm4y1g7sq
55+
13SoilMoistureSensor
56+
集成化气泵13——土壤湿度可视化 https://www.bilibili.com/video/BV1Eu411F79c
57+
13_2SoilMoistureSensorFourAirPump
58+
集成化气泵13_2——土壤湿度可视化(四气泵) https://www.bilibili.com/video/BV1Hu4m1u7Nr
59+
14ButtonControl
60+
集成化气泵14——按钮控制 https://www.bilibili.com/video/BV1Fu4m1G7eG
61+
14_2OneButtonControl
62+
体积太大?更小的nano集成化气泵来咯!按钮控制 https://www.bilibili.com/video/BV1VoyoYTE7r
63+
14_3ThreeButtonControl
64+
气体艺术‼按钮可控时长的气泵它来咯 https://www.bilibili.com/video/BV1p9SuYaEjb
65+
15TTP223TouchSensor
66+
集成化气泵15——触摸传感可视化 https://www.bilibili.com/video/BV1e2421M7Bw
67+
16PhotosensitiveSensor
68+
集成化气泵16——光敏传感可视化 https://www.bilibili.com/video/BV1b2421M74S
69+
17PotentiometerControl
70+
集成化气泵17——电位器控制 https://www.bilibili.com/video/BV1ct421t7Wf
71+
18BluetoothVibrationAirPump
72+
集成化气泵18——蓝牙震动气泵 https://www.bilibili.com/video/BV1iGeweGEa9
73+
19AirPumpMatrix
74+
气泵玩到极致!我用Arduino做了一个多种效果的气球矩阵! https://www.bilibili.com/video/BV1Qj411L7mb
75+
20GP2Y0A21YK0FInfraredBreathingCarpet
76+
会呼吸舞动的地毯,你见过吗? https://www.bilibili.com/video/BV15k4y197f1
77+
21AirPumpStepByStep
78+
集成化气泵21——气球台阶(六气泵) https://www.bilibili.com/video/BV1fm421J7LH
79+
22AirPumpBomb
80+
集成化气泵22——气泵炸药包 https://www.bilibili.com/video/BV1yx4y1h7ub
81+
23MP121GrassPlot
82+
【售后反馈】气泵交互艺术——呼吸草坪 https://www.bilibili.com/video/BV1HsHLetED5
83+
24VoiceRecognitionAirPump
84+
解放双手,可以语音远程控制的集成化气泵! https://www.bilibili.com/video/BV1phs6e3Eoo
85+
25AirPumpDoubleBanger
86+
集成化气泵25——气泵双响炮3(两充两放) https://www.bilibili.com/video/BV1rr421g7Xv
87+
26UltrasonicAirPumpInteractiveGame
88+
集成化气泵26——超声波气泵互动装置 https://www.bilibili.com/video/BV1Bt421K7zc
89+
27ButtonWS2812LEDAirPump
90+
集成化气泵27——按钮灯带气泵 https://www.bilibili.com/video/BV1SJ4m1M7Zq
91+
28ProcessingAirPumpInteractive
92+
【赤鱼科技】Processing和气泵装置交互新玩法 https://www.bilibili.com/video/BV1yk28YUEFZ
93+
*/
94+
95+
96+
#define airPumpPin 5 // 控制气泵充气 引脚
97+
#define airValvePin 6 // 控制气阀放气 引脚
98+
99+
#define airPumpON HIGH // 气泵打开 开启充气
100+
#define airPumpOFF !airPumpON // 气泵关闭 停止充气
101+
102+
#define airValveON HIGH // 气阀打开 开启放气
103+
#define airValveOFF !airValveON // 气阀关闭 停止放气
104+
105+
void setup() {
106+
Serial.begin(9600);
107+
pinMode(airPumpPin, OUTPUT); // 设置引脚输出
108+
pinMode(airValvePin, OUTPUT); // 设置引脚输出
109+
digitalWrite(airPumpPin, airPumpOFF); // 初始状态 关闭气泵 停止充气
110+
digitalWrite(airValvePin, airValveON); // 初始状态 气阀打开 开启放气
111+
}
112+
113+
void loop() {
114+
digitalWrite(airPumpPin, airPumpON); // 气泵开启 开启充气
115+
//analogWrite(airPumpPin, 200); // 如果想要修改充气速度,可在此行代码修改200这个数字(范围0-255),越大速度越快,删除”//”后修改后面数字,在上一行代码开头添加”//”
116+
digitalWrite(airValvePin, airValveOFF); // 气阀关闭 停止放气
117+
delay(4000);
118+
119+
digitalWrite(airPumpPin, airPumpOFF); // 气泵关闭 停止充气
120+
digitalWrite(airValvePin, airValveON); // 气阀开启 开启放气
121+
//analogWrite(airValvePin, 200); // 如果想要修改放气速度,可在此行代码修改200这个数字(范围0-255),越大速度越快,删除”//”后修改后面数字,在上一行代码开头添加”//”
122+
delay(3500);
123+
}
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
/**
2+
气泵效果02
3+
呼吸效果,由小变大,由大变小
4+
5+
视频链接:
6+
集成化气泵02——动态呼吸 https://www.bilibili.com/video/BV1WN411S7LJ
7+
气泵交互艺术——血液心脏 https://www.bilibili.com/video/BV1tT42117g6
8+
气泵交互艺术——神经元 https://www.bilibili.com/video/BV1VtsteRErj
9+
气泵交互艺术——棺柩心脏 https://www.bilibili.com/video/BV1Yz421y7xE
10+
11+
Contact us
12+
Tel/WeChat: 18682388114
13+
14+
*/
15+
16+
// -------------------------------- 气泵 ----------------------------------
17+
#define airPumpPin 5 // 控制气泵充气 引脚
18+
#define airValvePin 6 // 控制气阀放气 引脚
19+
#define airPumpON HIGH // 气泵打开 开启充气
20+
#define airPumpOFF !airPumpON // 气泵关闭 停止充气
21+
#define airValveON HIGH // 气阀打开 开启放气
22+
#define airValveOFF !airValveON // 气阀关闭 停止放气
23+
// -----------------------------------------------------------------------
24+
// -------------------------------- 参数 ----------------------------------
25+
#define initializeTime 5000 // 初始化放气时间(1秒 = 1000毫秒) *可调*
26+
unsigned long runRecordTime = 0; // 运行记录时间
27+
#define inflatableTime 5000 // 充气时间(1秒 = 1000毫秒) *可调*
28+
#define deflationTime 3000 // 放气时间(1秒 = 1000毫秒) *可调*
29+
uint8_t systemRunState = 0x00; // 系统运行状态
30+
// -----------------------------------------------------------------------
31+
32+
void setup() {
33+
Serial.begin(9600);
34+
pinMode(airPumpPin, OUTPUT); // 设置引脚输出
35+
pinMode(airValvePin, OUTPUT); // 设置引脚输出
36+
digitalWrite(airPumpPin, airPumpOFF); // 初始状态 关闭气泵 停止充气
37+
digitalWrite(airValvePin, airValveON); // 初始状态 气阀打开 开启放气
38+
//analogWrite(airPumpPin, 0); // 初始状态 关闭气泵 停止充气
39+
//analogWrite(airValvePin, 255); // 初始状态 气阀打开 开启放气
40+
41+
// 初始化开始时,先放气
42+
runRecordTime = millis(); // 记录当前时间
43+
Serial.println(F("初始化放气中~"));
44+
while (millis() - runRecordTime < initializeTime) { // 判断时间是否符合条件
45+
// 放气中
46+
}
47+
Serial.println(F("Start successfully"));
48+
}
49+
50+
void loop() {
51+
switch (systemRunState) {
52+
case 0x00: { // 设置充气参数
53+
Serial.println(F("开始充气"));
54+
runRecordTime = millis(); // 记录时间
55+
digitalWrite(airPumpPin, airPumpON); // 开启充气
56+
digitalWrite(airValvePin, airValveOFF); // 关闭放气
57+
//analogWrite(airPumpPin, 255); // 开启充气
58+
//analogWrite(airValvePin, 0); // 关闭放气
59+
systemRunState = 0x01; // 状态改变
60+
} break;
61+
case 0x01: { // 等待充气时间
62+
if (millis() - runRecordTime >= inflatableTime) { // 判断充气时间是否达到
63+
systemRunState = 0x02; // 状态改变
64+
}
65+
} break;
66+
case 0x02: { // 设置放气参数
67+
Serial.println(F("开始放气"));
68+
runRecordTime = millis(); // 记录时间
69+
digitalWrite(airPumpPin, airPumpOFF); // 关闭充气
70+
digitalWrite(airValvePin, airValveON); // 开启放气
71+
//analogWrite(airPumpPin, 0); // 关闭充气
72+
//analogWrite(airValvePin, 255); // 开启放气
73+
systemRunState = 0x03; // 状态改变
74+
} break;
75+
case 0x03: { // 等待放气时间
76+
if (millis() - runRecordTime >= deflationTime) { // 判断放气时间是否达到
77+
systemRunState = 0x00; // 状态改变
78+
}
79+
} break;
80+
}
81+
82+
// loop回括号
83+
}
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
/**
2+
气泵效果02_2 双气泵动态呼吸
3+
呼吸效果,由小变大,由大变小
4+
5+
视频链接:
6+
https://www.bilibili.com/video/BV1LW421c7mS
7+
8+
Contact us
9+
Tel/WeChat: 18682388114
10+
11+
*/
12+
13+
// -------------------------------- 气泵 ----------------------------------
14+
int airPumpPin[2] = {3, 5}; // 控制气泵充气 引脚
15+
int airValvePin[2] = {4, 6}; // 控制气阀放气 引脚
16+
#define airPumpON HIGH // 气泵打开 开启充气
17+
#define airPumpOFF !airPumpON // 气泵关闭 停止充气
18+
#define airValveON HIGH // 气阀打开 开启放气
19+
#define airValveOFF !airValveON // 气阀关闭 停止放气
20+
// -----------------------------------------------------------------------
21+
// -------------------------------- 参数 ----------------------------------
22+
#define initializeTime 5000 // 初始化放气时间(1秒 = 1000毫秒) *可调*
23+
unsigned long runRecordTime = 0; // 运行记录时间
24+
#define inflatableTime 5*1000UL // 充气时间(1秒 = 1000毫秒) *可调*
25+
#define deflationTime 4*1000UL // 放气时间(1秒 = 1000毫秒) *可调*
26+
uint8_t systemRunState = 0x00; // 系统运行状态
27+
// -----------------------------------------------------------------------
28+
29+
void setup() {
30+
Serial.begin(9600);
31+
for (int i = 0; i < 2; i++) {
32+
pinMode(airPumpPin[i], OUTPUT); // 设置引脚输出
33+
pinMode(airValvePin[i], OUTPUT); // 设置引脚输出
34+
digitalWrite(airPumpPin[i], airPumpOFF); // 初始状态 关闭气泵 停止充气
35+
digitalWrite(airValvePin[i], airValveON); // 初始状态 气阀打开 开启放气
36+
//analogWrite(airPumpPin, 0); // 初始状态 关闭气泵 停止充气
37+
//analogWrite(airValvePin, 255); // 初始状态 气阀打开 开启放气
38+
}
39+
40+
// 初始化开始时,先放气
41+
runRecordTime = millis(); // 记录当前时间
42+
Serial.println(F("初始化放气中~"));
43+
while (millis() - runRecordTime < initializeTime) { // 判断时间是否符合条件
44+
// 放气中
45+
}
46+
Serial.println(F("Start successfully"));
47+
}
48+
49+
void loop() {
50+
switch (systemRunState) {
51+
case 0x00: { // 设置充气参数
52+
Serial.println(F("开始充气"));
53+
runRecordTime = millis(); // 记录时间
54+
for (int i = 0; i < 2; i++) {
55+
digitalWrite(airPumpPin[i], airPumpON); // 开启充气
56+
digitalWrite(airValvePin[i], airValveOFF); // 关闭放气
57+
//analogWrite(airPumpPin, 255); // 开启充气
58+
//analogWrite(airValvePin, 0); // 关闭放气
59+
}
60+
systemRunState = 0x01; // 状态改变
61+
} break;
62+
case 0x01: { // 等待充气时间
63+
if (millis() - runRecordTime >= inflatableTime) { // 判断充气时间是否达到
64+
systemRunState = 0x02; // 状态改变
65+
}
66+
} break;
67+
case 0x02: { // 设置放气参数
68+
Serial.println(F("开始放气"));
69+
runRecordTime = millis(); // 记录时间
70+
for (int i = 0; i < 2; i++) {
71+
digitalWrite(airPumpPin[i], airPumpOFF); // 关闭充气
72+
digitalWrite(airValvePin[i], airValveON); // 开启放气
73+
//analogWrite(airPumpPin, 0); // 关闭充气
74+
//analogWrite(airValvePin, 255); // 开启放气
75+
}
76+
systemRunState = 0x03; // 状态改变
77+
} break;
78+
case 0x03: { // 等待放气时间
79+
if (millis() - runRecordTime >= deflationTime) { // 判断暂停时间是否达到
80+
systemRunState = 0x00; // 状态改变
81+
}
82+
} break;
83+
}
84+
85+
// loop回括号
86+
}

0 commit comments

Comments
 (0)