示例#1
0
def main():
    Vilib.camera_start(vflip=True, hflip=True)
    Vilib.display(local=True, web=True)
    Vilib.human_detect_switch(True)

    while True:
        object_show()
        sleep(0.2)
示例#2
0
def human_follow():
    global pan_angle_human, tilt_angle_human
    Vilib.human_detect_switch(True)
    status = [Vilib.human_detect_object('x'), Vilib.human_detect_object('y')]
    time.sleep(0.005)
    #on left -1 on right 1
    if status[0] == -1:
        pan_angle_human = pan_angle_human + 1
        set_camera_servo1_angle(min(90, pan_angle_human))
    elif status[0] == 1:
        pan_angle_human = pan_angle_human - 1
        set_camera_servo1_angle(max(-90, pan_angle_human))
    if status[1] == -1:
        tilt_angle_human = tilt_angle_human + 1
        set_camera_servo2_angle(min(45, tilt_angle_human))
    elif status[1] == 1:
        tilt_angle_human = tilt_angle_human - 1
        set_camera_servo2_angle(max(-45, tilt_angle_human))
import time
__reset_mcu__()
time.sleep(0.01)
from vilib import Vilib
from picarmini import dir_servo_angle_calibration
from picarmini import set_camera_servo2_angle
from ezblock import delay
from ezblock import TTS
from picarmini import camera_servo1_angle_calibration
from picarmini import camera_servo2_angle_calibration
from ezblock import WiFi

__tts__ = TTS()

Vilib.camera_start(True)
Vilib.human_detect_switch(True)
dir_servo_angle_calibration(0)
camera_servo1_angle_calibration(0)
camera_servo2_angle_calibration(0)
WiFi().write('DE', 'Projesh', 'Syepto17')


def forever():
    if (Vilib.human_detect_object(('number'))) >= 1:
        set_camera_servo1_angle(30)
        delay(150)
        set_camera_servo1_angle((-30))
        delay(150)
        set_camera_servo2_angle(0)
        delay(150)
        __tts__.say('Hello,nice to meet projesh!')
示例#4
0
    async def main_func(self):
        while 1:
            self.gs_list = car.get_adc_value()
            if self.recv_dict['CD'][0] == 'on':
                if self.is_on_edge(int(self.recv_dict['CD'][1]),self.gs_list):
                    car.backward(50)
                    time.sleep(0.5)
                    car.stop()

            if self.recv_dict['TL'][0] =='on':
                # print("line_follow on")
                car.ref = int(self.recv_dict['TL'][1])
                car.line_follow()

            if self.recv_dict['OA'] == 'on':
                # print("ultrasonic on")
                distance = self.us.read()
                if distance > 40 or distance == -2:
                    car.set_dir_servo_angle(0)
                    car.forward(50)
                elif distance < 10:
                    car.set_dir_servo_angle(-40)
                    car.backward(50)
                    time.sleep(0.5)
                elif distance < 30:
                    car.set_dir_servo_angle(40)
                    car.forward(50)
                    time.sleep(0.5)
                    
            
            if self.recv_dict['HT'] == 'on':
                Vilib.human_detect_switch(True)
            
            if self.recv_dict['HT'] == 'off':
                Vilib.human_detect_switch(False)
                
            if self.recv_dict['HF'] == 'on':
                car.human_follow()
            
            if self.recv_dict['CT'] == 'on':
                Vilib.color_detect_switch(True)
            
            if self.recv_dict['CT'] == 'off':
                Vilib.color_detect_switch(False)
            
            if self.recv_dict['CF'] == 'on':
                car.color_follow()
            
            if self.recv_dict['SS'][0] == 'on':
                music.sound_effect_threading(self.sound_name[int(self.recv_dict['SS'][1])], float(self.recv_dict['SS'][2]))
                self.recv_dict['SS'][0] = 'off' 
            
            if self.recv_dict['SM'][0] == 'on':
                temp = int(self.recv_dict['SM'][1])
                if self.current_music != temp:
                    music.music_stop()
                    self.music_flag = True
                    self.current_music = temp
                if self.music_flag:
                    try:
                        music_file = self.music_name[self.current_music]
                        volume = float(self.recv_dict['SM'][2])
                        music.background_music(music_file, volume=volume) 
                    except IndexError:
                        print("no such music file: ", int(self.recv_dict['SM'][1]) + 1)
                    self.music_flag = False
                # self.recv_dict['SM'][0] = 'off' 
            elif self.recv_dict['SM'][0] == 'off':
                if self.music_flag == False:
                    music.music_stop()
                    self.music_flag = True
            
            # if self.recv_dict['SL'][0] == 'on':
            #     if self.found_name(self.record_name[int(self.recv_dict['SL'][1])]):
            #         self.send_dict['FF'] = 'True'
            #         print("play")
            #         music.record_play(self.record_name[int(self.recv_dict['SL'][1])],volume = float(self.recv_dict['SL'][2]))
            #         self.recv_dict['SL'][0] = 'off'
            #     else:
            #         self.send_dict['FF'] = 'False'
                
                
            if self.recv_dict['TT'][0] == 'on':
                self.tts.say(self.recv_dict['TT'][1]) 
                self.recv_dict['TT'][0] = 'off'  
            
        
            await asyncio.sleep(0.01)