Sisukord:
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-23 14:40
Proovige nutika õppetunni viisavaldkonda, mis ei ole professionaalide jaoks professuure possam utilizar como um conteúdo a mais para ensinar seus alunos os levando a um nível de aprendizado muito superior por conseguir mostrar os conteúdos de forma dinâmica e interativa, proportsiono experience in não presencia de aula konvencional.
Samm 1: Materiaalsus
Programmeerige Dragonboard 410c:
- Dragonboard 410c;
- Cabo HDMI;
-Teclado USB kaudu -hiir USB kaudu -monitor;
- vahelae 96 lauad;
Rakendus või projekt:
- Dragonboard 410c;
- vahelae 96 lauad;
- Sensor Grove IMU 10DOF MPU - 9250 (não limitado ao uso de um único sensor);
- Fonte de alimentação externa 11,1V;
- hüppaja fêmea-fêmea;
2. samm: Dragonboard 410c Com Mezzanine 96 Lauad: Configuração E Pinagem
O Shield Mezzanine deve ser acoplado à placa Dragonboard 410c, para que haja fornecimento de saída 3.3V / 5V (taseme nihutaja), mürgitab 1,8 V võimsust. O anduri kasutamine magnetometro Sensor MPU -9250 Grove -IMU 10DOF, täpsemalt:
Tensão de Entrada: 5V / 3,3V;
Funktsioon: 6mA;
Comunicação jada;
Pinos: VCC, GND, SDA ja SCL;
I2C liides;
Kasutage näiteks Grove I2C0 (5V), mis on ühendatud ühenduse jadaühenduse ja anduriga töötamise vajadusega. (ver pilt)
3. samm: Integração: Unity + Vuforia
1- Vá ao site da vuforia na área de desenvolvedor e crie uma chave.
2- Vahekaart Target Manager ja soovituslik tekstuur para fazer o Tracking (quanto mais complexa melhor).
3- Feito isso baixe andmebaas Unity e importe.
4- No Unity configure um image target com text text escolhida and dentro deleionale model 3D 3D que dese utilizar, os mesmos estarão ativos quando a imagem for localizada pelo app.
5- Unity a chave de litsents da vuforia nas configurações dentro do Unity.
6- Apos isso modele os komponendid da aula em algum program 3D ja valmistuda aulas em cima do image target (pode ser uma aula de Biologia ou Física…).
Samm 4: Unity: seadistage O Android SDK
1- Androidi Baixe või SDK, Unity eelistused ja valik.
2- Mude a build plataform do Unity android, assim conseguiremos gerar o APK.
3- Installige või installige see rakendus (mitte lubage fonde desconhecidas nas configurações).
5. samm: Criando Servidor Local E Recebendo Info Python
Concluídas as configurações apresentadas, podemos acessar või Sistema Linaro dentro da placa e utilizar várias linguagens como C ++, Java, Python, etc., para criar or software que será executado. Esteetarkvara ja reageerimisvõimalus vastuvõtja osade jaoks, andmeside, protsessor ja tratar estes dados conforme solicitado pelo programme. Depois carrega esses dados para or servidor alocado na própria placa para enviar os dados já tratados para a plataforma Unity. Os exemplos de código deste projeto estão em linguagem Phyton. Rakenduse Dragonboard 410c osad on ülekanderakendused rakenduses Unity ja são apresentados.
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
# Autoriõigus (c) 2015 Intel Corporation.
#
# Käesolevaga antakse tasuta luba igale isikule
# selle tarkvara koopia ja sellega seotud dokumentatsioonifailid (# "Tarkvara"), et piiranguteta tarkvaraga tegeleda, sealhulgas
# piiranguteta kasutamise, kopeerimise, muutmise, ühendamise, avaldamise õigused, # levitada, litsentsida ja/või müüa tarkvara koopiaid ja
# lubage seda teha isikutel, kellele tarkvara on ette nähtud
# järgmised tingimused:
#
# Ülaltoodud autoriõiguse teatis ja see loa teatis peavad olema
# sisaldub kõikides tarkvara koopiates või olulistes osades.
#
# TARKVARA TARNITAKSE "NAGU", ILMA MITMESUGUST GARANTIID, # VÕIMALIK VÕI IMPLIATSIOON, KAASA, PIIRATUD EI OLE PIIRATUD GARANTIIDEGA
# MÜÜGILIKKUS, KOHALDUMINE TEATUD EESMÄRGIL JA
# MITTEVÄÄRTUS. AUTORID VÕI AUTORIÕIGUSTE HOIDJAD EI TOHI OLLA
# VASTUTUS IGATE NÕUETE, KAHJUDE VÕI MUU VASTUTUSE KOHTA, OLEMAS MEETMES
LEPINGU, PORTI VÕI MUU VASTU, KUI TULEB, VÄLJA VÕI ÜHENDUSES
# TARKVARA VÕI KASUTAMISE VÕI MUU TARKVARA TEGEVUSEGA.
_tulevikust_ impordi printimise_funktsioonist
impordi aeg, sys, signaal, atexit, urllib, urllib2, matemaatika
upm'ist importige pyupm_mpu9150 andurinaObj
def main ():
# andmed = {}
# data ['magnetrometro'] = toores_sisend ("Informe a Temperatura")
# andmed = urlib.urlencode (andmed)
# post_request = urlib2. Request (post_url, andmed, päised)
# proovi:
# post_response = urlib2.urlopen (post_request)
# print post_response.read ()
# välja arvatud URLViga nagu e:
# print "Viga:", e.põhjus
# Installige MP29250 I2C siinile
andur = sensorObj. MPU9250 ()
## Väljumistöötlejad ##
# See funktsioon peatab pythonil trükijälje printimise, kui vajutate klahvi Control-C
def SIGINTHandler (märk, raam):
tõsta SystemExit
# See funktsioon võimaldab käivitamisel koodi käivitada
def exitHandler ():
print ("Väljumine")
sys.exit (0)
# Registreerige väljapääsu käitlejad
atexit.register (exitHandler)
signal.signal (signal. SIGINT, SIGINTHandler)
sensor.init ()
x = sensorObj.new_floatp ()
y = sensorObj.new_floatp ()
z = sensorObj.new_floatp ()
samas (1):
sensor.update ()
sensor.getAccelerometer (x, y, z)
# print ("Kiirendusmõõtur:")
# print ("AX: %.4f" % sensorObj.floatp_value (x), end = '')
# print ("AY: %.4f" % sensorObj.floatp_value (y), lõpp = '')
# 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
# print (modulo1)
modulo1 = (" %.1f" % abs (((modulo1 ** 0,5) -1)*9,8))
# print (modulo1)
#
# sensor.getGyroscope (x, y, z)
# print ("Güroskoop: GX:", sensorObj.floatp_value (x), lõpp = '')
# print ("GY:", sensorObj.floatp_value (y), lõpp = '')
# print ("GZ:", sensorObj.floatp_value (z))
sensor.getMagnetomeeter (x, y, z)
# print ("Magnetomeeter: MX:", sensorObj.floatp_value (x), lõpp = '')
# print ("MY:", sensorObj.floatp_value (y), lõpp = '')
# print ("MZ:", sensorObj.floatp_value (z))
modulo2 = sensorObj.floatp_value (x) ** 2+sensorObj.floatp_value (y) ** 2+sensorObj.floatp_value (z) ** 2
# print (modulo2)
modulo2 = (" %.2f" % (modulo2 ** 0,5))
# print (modulo2)
arq = avatud ('/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 (link)
# page = send.read ()
# print (leht)
# link = ('https://data.sparkfun.com/input/1noGndywdjuDGAGd6m5K?private_key=0mwnmR9YRgSxApAo0gDX&acel='+str(modulo1))
# print ('enviando dados')
# send = urllib2.urlopen (link)
# page = send.read ()
# print (leht)
# print ("Temperatuur:", sensor.getTemperature ())
# print ()
# aeg.unenägu (.5)
kui _name_ == '_main_':
peamine ()
Código do Servidor Local
impordi aeg
import BaseHTTPServer
HOST_NAME = '172.17.56.9' # !!! MÄLE MEELDE, ET SEDA MUUDATA !!!
PORT_NUMBER = 80 # Võib -olla määrate selle väärtuseks 9000.
a = 0
klassi MyHandler (BaseHTTPServer. BaseHTTPRequestHandler):
def do_HEAD (s):
s.send_response (200)
s.send_header ("Sisu tüüp", "tekst/html")
s.end_headers ()
def do_GET (s):
dados = le_dados ()
trükk (isad)
"" "Vasta GET -i päringule." ""
kui s.path == "/1":
s.send_response (200)
s.send_header ("Sisu tüüp", "tekst/tavaline")
s.end_headers ()
s.wfile.write (isad)
elif s.path == "/2":
s.send_response (200)
s.send_header ("Sisu tüüp", "tekst/tavaline")
s.end_headers ()
s.wfile.write ("2")
muidu:
s.send_response (200)
s.send_header ("Sisu tüüp", "tekst/tavaline")
s.end_headers ()
s.wfile.write (isad)
#s.wfile.write ("ei leitud !!")
def le_dados ():
arq = avatud ('/tmp/dados.txt', 'r')
texto = arq.readline ()
arq.close ()
tagastustekstot
kui _name_ == '_main_':
server_class = BaseHTTPServer. HTTPServer
httpd = server_class ((HOST_NAME, PORT_NUMBER), MyHandler)
print time.asctime (), "Server käivitub - %s: %s" %(HOST_NAME, PORT_NUMBER)
proovige:
a = a+2
httpd.serve_forever ()
välja arvatud klaviatuur Katkestus:
üle andma
httpd.server_close ()
print time.asctime (), "Server peatub - %s: %s" %(HOST_NAME, PORT_NUMBER)
Código de Execução dos Códigos anteriores no Shell
#!/bin/bash
kaja "alustav mag_python"
sudo python mag_python.py &
kaja "käivita server"
sudo python server2.py
6. samm: tulemuse finaal
Feito isso as as aules poderão ser abiandmed ja juurdekasv pelo projeto Smart Lesson desenvolvido com a Dragonboard 410c. Teenindajad hõlbustamiseks ja proportsionaalseks kasutamiseks.
LINK rakendusele Google Play:
Link para códigos Py:
Soovitan:
Nutikas vöö: 18 sammu
Nutikas vöö: mõne vidina kandmine on väga keeruline. Ausalt, selles projektis sain ema käest õmblemiseks abi, sest ma ei oska ise õmmelda. Olge õmblusmasinaga õmblemisel ettevaatlik. Kui teil pole kunagi õmblusmasinaga õmblemist kogenud, on see ka
Nutikas äratuskell: nutikas äratuskell, mis on valmistatud Raspberry Pi -ga: 10 sammu (koos piltidega)
Nutikas äratuskell: nutikas äratuskell, mis on valmistatud Raspberry Pi -ga: kas olete kunagi tahtnud nutikat kella? Kui jah, siis see on teie jaoks lahendus! Ma tegin nutika äratuskella, see on kell, mille abil saate äratusaega vastavalt veebisaidile muuta. Kui äratus hakkab tööle, kostab heli (sumin) ja 2 tuld
IoT -põhine nutikas aiandus ja nutikas põllumajandus, kasutades ESP32: 7 sammu
IoT -põhine nutikas aiandus ja nutikas põllumajandus, kasutades ESP32: maailm muutub ajaga ja nii ka põllumajandus. Tänapäeval integreerivad inimesed elektroonikat igas valdkonnas ja põllumajandus pole sellest erand. See elektroonika ühendamine põllumajanduses aitab põllumehi ja aedu haldavaid inimesi. Selles
Õppetund 2: Arduino kasutamine vooluahela toiteallikana: 6 sammu
Õppetund 2: Arduino kasutamine vooluahela toiteallikana: Tere taas, õpilased, minu teisele kursusele, et õpetada elektroonikat. Neile, kes pole näinud minu esimest õppetundi, mis kirjeldab vooluringi põhitõdesid, vaadake seda kohe. Neile, kes on minu eelmist loengut juba näinud
Java töötuba - õppetund nr 1: 9 sammu
Java töötuba - õppetund nr 1: Tere tulemast Java töötuba - tund 1. Selle õppetunni pakub teile Virginia Tech klassi Code ()