Obsah:
- Krok 1: Materiais
- Krok 2: Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
- Krok 3: Integração: Unity + Vuforia
- Krok 4: Unity: Konfigurace O Android SDK
- Krok 5: Criando Servidor Local E Recebendo Informações Em Python
- Krok 6: Resultado Final
Video: Inteligentní lekce: 6 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
O projektu Inteligentní lekce vízum, které prodávají žádné kvalitní profesoři, kteří využívají více možností, než kolik a kolik lidí má více než jednu větší část, než jakákoli forma, která může mít vliv na vaši práci de aula konvenční.
Krok 1: Materiais
Jako program a Dragonboard 410c:
- Dragonboard 410c;
- Cabo HDMI;
-Teclado přes USB -myš přes USB -monitor;
- Mezzanine 96boards;
Para executar o projeto:
- Dragonboard 410c;
- Mezzanine 96boards;
- Sensor Grove IMU 10DOF MPU - 9250 (omezený počet senzorů a senzorů);
- Fonte de alimentação externa 11,1V;
- svetr fêmea-fêmea;
Krok 2: Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
O Shield Mezzanine deve ser acoplado à placa Dragonboard 410c, para que haja fornecimento de saída 3.3V / 5V (level shifter), pois a placa só fornece 1.8V de saída. Využití snímače pro magnetický snímač MPU -9250 Grove -IMU 10DOF, specifikace:
Tensão de Entrada: 5V / 3,3V;
Základní proud: 6mA;
Comunicação Serial;
Pinos: VCC, GND, SDA a SCL;
Rozhraní I2C;
Jedná se zejména o použití konektorů Grove I2C0 (5V), jejichž proporce a komunikace jsou sériové a mají základní funkci senzoru. (ver imagem)
Krok 3: Integração: Unity + Vuforia
1- Vá ao site da vuforia na área de desenvolvedor e crie uma chave.
2– Záložka Target Manager a další textury pro sledování nebo sledování (velké množství komplexních melodií).
3- Feito isso baixe a database para o Unity e importe.
4- Žádná jednota konfiguruje cíl obrázku a texturu a barvu pozadí pro 3D modely, které využívají více než jeden měsíc, a proto mohou mít aplikace pro lokalizaci pelo.
5- Doporučené licence pro konfiguraci zařízení.
6- Další možnosti použití 3D programů pro přípravu 3D obrazu, které lze připravit jako cíl obrazu (pode ser uma aula de Biologia ou Física…).
Krok 4: Unity: Konfigurace O Android SDK
1- Baixe o SDK do Android, vá em Unity preference e selecione or seu diretório.
2- Mude a build plataform do Unity para o android, assim conseguiremos gerar o APK.
3- Instalovat všechny aplikace, které máte k dispozici (všechny typy povolených fontů desconhecidas nas configurações).
Krok 5: Criando Servidor Local E Recebendo Informações Em Python
Konkrétní konfigurace a zastoupení zahrnují všechny základní systémy, které využívají různé jazykové verze jako C ++, Java, Python atd., Para criar o software que será executado. Vlastní software a odpověď na váš osobní snímač, jeho zpracování, zpracování a výběr přizpůsobeného programu. Depois carrega eses dados para o servidor alocado na própria placa para enviar os dados já tratados para a plataforma Unity. Příkladem může být projednání projektu Phyton. Přenos dat z Dragonboardu 410c do aplikace Unity a všech aplikací.
Seguem os códigos mag_python.py (leitor de dados do sensor), server2.py (Servidor local), Executável no Shell:
Código mag_python.py
#!/usr/bin/python
# Autor: Jon Trulson
# Copyright (c) 2015 Intel Corporation.
#
# Oprávnění se uděluje bezplatně jakékoli osobě, která získá
# kopie tohoto softwaru a souvisejících souborů dokumentace (# „Software“), k obchodování se Softwarem bez omezení, včetně
# bez omezení práva používat, kopírovat, upravovat, sloučit, publikovat, # distribuovat, sublicencovat a/nebo prodávat kopie Softwaru a
# povolit osobám, kterým je Software poskytnut, aby tak učinily, s výhradou
# následující podmínky:
#
# Výše uvedené oznámení o autorských právech a toto oznámení o povolení budou
# je součástí všech kopií nebo podstatných částí Softwaru.
#
# SOFTWARE JE POSKYTOVÁN „TAK, JAK JE“, BEZ ZÁRUKY JAKÉHOKOLI DRUHU, # VYJÁDŘENÉ NEBO IMPLIKOVANÉ, VČETNĚ, ALE NE OMEZENÉ ZÁRUKAMI
# OBCHODOVATELNOST, VHODNOST PRO ZVLÁŠTNÍ ÚČEL A
# NEINFRINGEMENT. V ŽÁDNÉM PŘÍPADĚ NEBUDOU AUTORI NEBO DRŽITELÉ AUTORSKÝCH PRÁV
# ODPOVĚDNOST ZA JAKÉKOLI REKLAMY, ŠKODY NEBO JINOU ODPOVĚDNOST, JIŽ V AKCI
# SMLOUVY, MOHY NEBO JINAK, ZÍSKÁVAJÍCÍ SE Z, VNĚJŠÍ NEBO V PŘIPOJENÍ
# SO SOFTWAREM NEBO POUŽITÍM NEBO JINÝMI OBCHODY V SOFTWARU.
from _future_ import print_function
čas importu, sys, signál, atexit, urllib, urllib2, matematika
from upm import pyupm_mpu9150 as sensorObj
def main ():
# data = {}
# data ['magnetrometro'] = raw_input ("Informe a temperatura")
# data = urlib.urlencode (data)
# post_request = urlib2. Request (post_url, data, záhlaví)
# Snaž se:
# post_response = urlib2.urlopen (post_request)
# print post_response.read ()
# kromě URLError jako e:
# tisk "Chyba:", e.reason
# Vytvořte instanci MPU9250 na sběrnici I2C 0
senzor = senzorObj. MPU9250 ()
## Ukončení obsluhy ##
# Tato funkce zastaví python v tisku stacktrace, když stisknete control-C
def SIGINTHandler (signum, rám):
zvýšit SystemExit
# Tato funkce vám umožní spustit kód při ukončení
def exitHandler ():
tisk ("Konec")
sys.exit (0)
# Zaregistrujte obslužné rutiny výstupu
atexit.register (exitHandler)
signal.signal (signal. SIGINT, SIGINTHandler)
sensor.init ()
x = sensorObj.new_floatp ()
y = sensorObj.new_floatp ()
z = sensorObj.new_floatp ()
zatímco (1):
sensor.update ()
sensor.getAccelerometer (x, y, z)
# print ("Accelerometer:")
# print ("AX: %.4f" % sensorObj.floatp_value (x), end = '')
# print ("AY: %.4f" % sensorObj.floatp_value (y), end = '')
# print ("AZ: %.4f" % sensorObj.floatp_value (z))
modulo1 = (sensorObj.floatp_value (x) -0,005) ** 2+ (sensorObj.floatp_value (y) -0,0150) ** 2+ (sensorObj.floatp_value (z) -0,0450) ** 2
# tisk (modulo1)
modulo1 = (" %.1f" % abs ((((modulo1 ** 0,5) -1)*9,8))
# tisk (modulo1)
#
# sensor.getGyroskop (x, y, z)
# print ("Gyroskop: GX:", sensorObj.floatp_value (x), end = '')
# print ("GY:", sensorObj.floatp_value (y), end = '')
# print ("GZ:", sensorObj.floatp_value (z))
sensor.getMagnetometr (x, y, z)
# print ("Magnetometr: MX:", sensorObj.floatp_value (x), end = '')
# print ("MY:", sensorObj.floatp_value (y), end = '')
# print ("MZ:", sensorObj.floatp_value (z))
modulo2 = sensorObj.floatp_value (x) ** 2+sensorObj.floatp_value (y) ** 2+sensorObj.floatp_value (z) ** 2
# tisk (modulo2)
modulo2 = (" %.2f" % (modulo2 ** 0,5))
# tisk (modulo2)
arq = otevřeno ('/tmp/dados.txt', 'w')
texto =
texto.append (str (modulo2)+","+str (modulo1))
arq.writelines (texto)
arq.close ()
# link = ('https://data.sparkfun.com/input/0lwWlyRED5i7K0AZx4JO?private_key=D6v76yZrg9CM2DX8x97B&mag='+str(modulo2))
# print ('enviando dados')
# send = urllib2.urlopen (odkaz)
# stránka = send.read ()
# tisk (stránka)
# link = ('https://data.sparkfun.com/input/1noGndywdjuDGAGd6m5K?private_key=0mwnmR9YRgSxApAo0gDX&acel='+str(modulo1))
# print ('enviando dados')
# send = urllib2.urlopen (odkaz)
# stránka = send.read ()
# tisk (stránka)
# print ("Teplota:", sensor.getTemperature ())
# tisk()
# time.sleep (.5)
if _name_ == '_main_':
hlavní()
Código do Servidor Místní
čas importu
importovat BaseHTTPServer
HOST_NAME = '172.17.56.9' # !!! PAMATUJTE TO ZMĚNIT !!!
PORT_NUMBER = 80 # Možná to nastavíte na 9000.
a = 0
třída MyHandler (BaseHTTPServer. BaseHTTPRequestHandler):
def do_HEAD (s):
s.send_response (200)
s.send_header („Content-type“, „text/html“)
s.end_headers ()
def do_GET (s):
dados = le_dados ()
tisk (dados)
"" "Odpovězte na požadavek GET." ""
pokud s.path == "/1":
s.send_response (200)
s.send_header („Content-type“, „text/plain“)
s.end_headers ()
s.wfile.write (dados)
elif s.path == "/2":
s.send_response (200)
s.send_header („Content-type“, „text/plain“)
s.end_headers ()
s.wfile.write ("2")
jiný:
s.send_response (200)
s.send_header („Content-type“, „text/plain“)
s.end_headers ()
s.wfile.write (dados)
#s.wfile.write („not found !!“)
def le_dados ():
arq = otevřeno ('/tmp/dados.txt', 'r')
texto = arq.readline ()
arq.close ()
vrátit texto
if _name_ == '_main_':
server_class = BaseHTTPServer. HTTPServer
httpd = třída_serveru ((HOST_NAME, PORT_NUMBER), MyHandler)
print time.asctime (), "Server začíná - %s: %s" %(HOST_NAME, PORT_NUMBER)
Snaž se:
a = a+2
httpd.serve_forever ()
kromě KeyboardInterrupt:
složit
httpd.server_close ()
print time.asctime (), "Server se zastaví - %s: %s" %(HOST_NAME, PORT_NUMBER)
Código de Execução dos Códigos anteriores no Shell
#!/bin/bash
echo "začínající mag_python"
sudo python mag_python.py &
echo "spustit server"
sudo python server2.py
Krok 6: Resultado Final
Některé z nich mohou obsahovat další pomocné a přidané položky a další inteligentní lekce, které jsou k dispozici na Dragonboardu 410c. Poskytovatel služeb a proporcí má více aprílových systémů, jako jsou soukromá vystoupení.
ODKAZ na aplikaci bez Google Play:
Odkaz na Py Py:
Doporučuje:
Inteligentní budík: inteligentní budík vyrobený z Raspberry Pi: 10 kroků (s obrázky)
Chytrý budík: Chytrý budík vyrobený z Raspberry Pi: Chtěli jste někdy chytré hodiny? Pokud ano, toto je řešení pro vás! Vytvořil jsem inteligentní budík, toto jsou hodiny, u kterých můžete podle času na webu změnit čas budíku. Když se spustí alarm, ozve se zvuk (bzučák) a 2 kontrolky
Inteligentní zahradničení založené na IoT a inteligentní zemědělství pomocí ESP32: 7 kroků
Inteligentní zahradničení založené na IoT a inteligentní zemědělství pomocí ESP32: Svět se mění v čase a také v zemědělství. V dnešní době lidé integrují elektroniku do všech oblastí a zemědělství pro to není výjimkou. Toto sloučení elektroniky v zemědělství pomáhá zemědělcům a lidem, kteří spravují zahrady
Lekce 2: Použití Arduina jako zdroje energie pro obvod: 6 kroků
Lekce 2: Použití Arduina jako zdroje energie pro obvod: Dobrý den, studenti, moje druhá lekce mého kurzu pro výuku základní elektroniky. Pro ty, kteří neviděli moji první lekci, která popisuje velmi, velmi, základy obvodů, podívejte se na to nyní. Pro ty, kteří již viděli můj předchozí le
Workshop Java - lekce č. 1: 9 kroků
Workshop Java - lekce č. 1: Vítejte v Java Workshopu - lekce č. 1. Tuto lekci vám poskytne třída Code () ve společnosti Virginia Tech
Arduino Tank Car Lekce 6-Bluetooth a Wifi Hot Spot Control: 4 kroky
Arduino Tank Car Lekce 6-Bluetooth a Wifi Hot Spot Control: V této lekci se naučíme, jak ovládat mobilní APP Robot car přes WiFi a Bluetooth. Jako rozšiřující desku používáme wifi espasion desku esp8266 a ovládáme cisternový vůz prostřednictvím IR přijímače v předchozích lekcích. V této lekci se naučíme