#!/usr/bin/env python3 import hcsr04 import Serial_Servo_Running as SSR from time import time, sleep sonar = hcsr04.Measurement(12, 16) sample_size = 1 sample_wait = 0.01 count = 5 interval = 0.1 def check_values(values): # for value in values: # if value >= 100: # return False avg = sum(values) / len(values) ok_range = lambda x: x >= avg * 0.9 and x <= avg * 1.1 for value in values: if not ok_range(value): return False return avg
# #实现的功能: 程序通过超声波传感器测量距离. # 实现一个socket服务器, 所有连接到这个服务器的客户端都会定时接收到该距离 # import RPi.GPIO as GPIO import time import threading import socketserver import hcsr04 client_socket = [] #客户端列表 GPIO_TRIG = 3 #超声波trig引脚对应的IO号 GPIO_ECHO = 6 #超声波echo引脚对应的IO号 sonar = hcsr04.Measurement(GPIO_TRIG, GPIO_ECHO) #超声波类 DISTANCE = 0.0 #距离 class LobotServer(socketserver.ThreadingTCPServer): allow_reuse_address = True class LobotServerHandler(socketserver.BaseRequestHandler): global clietn_socket ip = "" port = None def setup(self): self.ip = self.client_address[0].strip() self.port = self.client_address[1] print("connected\tIP:"+self.ip+"\tPort:"+str(self.port)) client_socket.append(self.request)
#实现的功能: 程序通过超声波传感器测量距离. # 实现一个socket服务器, 所有连接到这个服务器的客户端都会定时接收到该距离 # import RPi.GPIO as GPIO import time import threading import socketserver import hcsr04 client_socket = [] #客户端列表 GPIO_TRIG = 3 #超声波trig引脚对应的IO号 GPIO_ECHO1 = 2 #超声波echo引脚对应的IO号 GPIO_ECHO2 = 6 sonar1 = hcsr04.Measurement(GPIO_TRIG, GPIO_ECHO1) #超声波类1 sonar2 = hcsr04.Measurement(GPIO_TRIG, GPIO_ECHO2) #超声波类2 distance = 0.0 #距离 DISTANCE = 0.0 class LobotServer(socketserver.ThreadingTCPServer): allow_reuse_address = True class LobotServerHandler(socketserver.BaseRequestHandler): global clietn_socket ip = "" port = None def setup(self):