我正在尝试通过Copperhead Wi-Fi屏蔽将传感器数据从Arduino Uno发送到LAN上的特定IP地址和端口.
我可以使用Copperhead Wi-Fi服务器示例草图(粘贴在下面).但是,我对通过HTML响应服务器请求不感兴趣.我感兴趣的是设置类似套接字的连接,并通过TCP或UDP将数据发送到IP地址192.168.0.3,端口1234.
我确信这有一个简单的解决方案,但由于我是Arduino的新手并且我试图找到解决方案的尝试都没有成功.
#include <WiServer.h>
#define WIRELESS_MODE_INFRA 1
#define WIRELESS_MODE_ADHOC 2
// Wireless configuration parameters ----------------------------------------
unsigned char local_ip[] = {192,168,0,2}; // IP address of WiShield
unsigned char gateway_ip[] = {192,168,0,1}; // router or gateway IP address
unsigned char subnet_mask[] = {255,255,255,0}; // subnet mask for the local network
const prog_char ssid[] PROGMEM = {"WiFi_AP"}; // max 32 bytes
unsigned char security_type = 0; // 0 - open; 1 - WEP; …Run Code Online (Sandbox Code Playgroud) 以下是我作为csv文件导入的数据类型:
RPID mm ID Time Freq Freq.1 Freq.2
RPO483 1 B6AC 5 23301 30512
RPO483 1 B6AC 25 19 17
RPO244 1 B6C 5 14889 20461
RPO244 1 B6C 25 81 86
RPO876 1 G3G3A 5 106760 59950 103745
RPO876 1 G3G3A 25 4578 38119 37201
RPO876 7 F3G3A 5 205803 148469 173580
RPO876 7 F3G3A 25 28648 30321 26454
RPO939 7 F3E324A 5 242285
RPO939 7 F3E324A 25 42837
RPO934 7 F3E325A 5 242001 129272 112371
RPO934 7 F3E325A …Run Code Online (Sandbox Code Playgroud) 我正在使用 ggplot 将各种事件绘制为它们开始的日期(x 轴)和开始时间(y 轴)的函数。数据/代码如下:
date<-c("2013-06-05","2013-06-05","2013-06-04","2013-06-04","2013-06-04","2013-06-04","2013-06-04",
"2013-06-04","2013-06-04","2013-06-03","2013-06-03","2013-06-03","2013-06-03","2013-06-03",
"2013-06-02","2013-06-02","2013-06-02","2013-06-02","2013-06-02","2013-06-02","2013-06-02")
start <-c("07:36:00","01:30:00","22:19:00","22:12:00","20:16:00","19:19:00","09:00:00",
"06:45:00","01:03:00","22:15:00","19:05:00","08:59:00","08:01:00","07:08:00",
"23:24:00","20:39:00","18:53:00","16:57:00","15:07:00","14:33:00","13:24:00")
duration <-c(0.5,6.1,2.18,0.12,1.93,0.95,10.32,
2.25,5.7,2.78,3.17,9.03,0.95,0.88,
7.73,2.75,1.77,1.92,1.83,0.57,1.13)
event <-c("AF201","SS431","BE201","CD331","HG511","CD331","WQ115",
"CD331","SS431","WQ115","HG511","WQ115","CD331","AF201",
"SS431","WQ115","HG511","WQ115","CD331","AS335","CD331")
df<-data.frame(date,start,duration,event)
library(ggplot2)
library(scales)
p <- ggplot(df, aes(as.Date(date),as.POSIXct(start,format='%H:%M:%S'),color=event))
p <- p+geom_point(alpha = I(6/10),size=5)
p + ylab("time (hr)") + xlab("date") + scale_x_date(labels = date_format("%m/%d")) +
scale_y_datetime(labels = date_format("%H"))+
scale_colour_hue(h=c(360, 90))
theme(axis.text.x = element_text(hjust=1, angle=0))
Run Code Online (Sandbox Code Playgroud)
结果图如下所示:

问题:不是简单地用一个点(如上所示)指示事件的开始时间,我如何绘制跨越事件持续时间的条形图?如上面的数据框所示,我有这个持续时间数据(以小时为单位)。或者,我可以提供“停止时间”(未显示)。
我想象这个解决方案看起来像一个堆积的条形图。但是,条形图并不完全正确,因为它假定条形图从图的底部开始,并且垂直堆叠的事件之间没有间隙。我的事件可能是不连续的——在沿 y 轴的不同位置“开始”和“停止”。解决方案还必须考虑到 1) 某些事件最终可能是并发的(时间重叠)和 2) 某些事件将跨越多天。
如有任何建议,我将不胜感激!