Indholdsfortegnelse:
- Trin 1: Materiais
- Trin 2: Dragonboard 410c Com Mezzanine 96Tavler: Configuração E Pinagem
- Trin 3: Integração: Enhed + Vuforia
- Trin 4: Enhed: Konfigurer O Android SDK
- Trin 5: Criando Servidor Local E Recebendo Informações Em Python
- Trin 6: Resultado Final
![Smart lektion: 6 trin Smart lektion: 6 trin](https://i.howwhatproduce.com/images/005/image-12161-j.webp)
Video: Smart lektion: 6 trin
![Video: Smart lektion: 6 trin Video: Smart lektion: 6 trin](https://i.ytimg.com/vi/SxNXV530wFM/hqdefault.jpg)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
![Smart lektion Smart lektion](https://i.howwhatproduce.com/images/005/image-12161-1-j.webp)
O projeto Smart Lesson visa criar um produto no qual os professores 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, proporcionando oplevelser não presencias de aula konventionel.
Trin 1: Materiais
![Materiais Materiais](https://i.howwhatproduce.com/images/005/image-12161-2-j.webp)
Til programmering af Dragonboard 410c:
- Dragonboard 410c;
- Cabo HDMI;
-Teclado via USB -Mouse via USB -Monitor;
- Mezzanin 96 boards;
Til eksekutør eller projektør:
- Dragonboard 410c;
- Mezzanin 96 boards;
- Sensor Grove IMU 10DOF MPU - 9250 (ikke begrænset til brug af sensor);
- Fonte de alimentação externa 11.1V;
- Jumper fêmea-fêmea;
Trin 2: Dragonboard 410c Com Mezzanine 96Tavler: Configuração E Pinagem
![Dragonboard 410c Com Mezzanine 96Tavler: Configuração E Pinagem Dragonboard 410c Com Mezzanine 96Tavler: Configuração E Pinagem](https://i.howwhatproduce.com/images/005/image-12161-3-j.webp)
![Dragonboard 410c Com Mezzanine 96Tavler: Configuração E Pinagem Dragonboard 410c Com Mezzanine 96Tavler: Configuração E Pinagem](https://i.howwhatproduce.com/images/005/image-12161-4-j.webp)
![Dragonboard 410c Com Mezzanine 96Tavler: Configuração E Pinagem Dragonboard 410c Com Mezzanine 96Tavler: Configuração E Pinagem](https://i.howwhatproduce.com/images/005/image-12161-5-j.webp)
O Shield Mezzanine deve ser acoplado à placa Dragonboard 410c, para que haja fornecimento de saída 3.3V / 5V (level shifter), pois a placa so fornece 1.8V de saída. O sensor utilizado foi um magnetômetro Sensor MPU -9250 Grove -IMU 10DOF, specifikationer:
Tensão de Entrada: 5V / 3.3V;
Corrente de funcionamento: 6mA;
Comunicação Seriel;
Pinos: VCC, GND, SDA og SCL;
I2C interface;
Det kan f.eks. Bruges til konstruktioner i Grove I2C0 (5V), som kan bruges til seriel og alimentação funktionalitet til en sensor. (ver imagem)
Trin 3: Integração: Enhed + Vuforia
![Integração: Enhed + Vuforia Integração: Enhed + Vuforia](https://i.howwhatproduce.com/images/005/image-12161-6-j.webp)
1- Vá ao site da vuforia na área de desenvolvedor e crie uma chave.
2- Gå til fanen Target Manager og en tekst, der kan bruges til sporing (sporing af mængder).
3- Feito isso baixe a database para o Unity e importe.
4- Ingen enhed konfigurer et billedmål med en tekst, der kan bruges til at bruge 3D-modeller, der kan bruges til at lokalisere en app.
5- Adicione a chave de licença da vuforia nas configurações dentro do Unity.
6- Vi kan også anvende forskellige komponenter i 3D-programmer og forberede dem som billedmål (pode ser uma aula de Biologia ou Física…).
Trin 4: Enhed: Konfigurer O Android SDK
![Enhed: Konfigurer O Android SDK Enhed: Konfigurer O Android SDK](https://i.howwhatproduce.com/images/005/image-12161-7-j.webp)
1- Grundlæggende om SDK til Android, eller vælg Unity-præferencer.
2- Gør en opbygningsplatform til Unity til Android, til at få adgang til APK.
3- Installer o apk em um dispositivo (não esqueça de permitir fontes desconhecidas nas configurações).
Trin 5: Criando Servidor Local E Recebendo Informações Em Python
![Criando Servidor Local E Recebendo Informações Em Python Criando Servidor Local E Recebendo Informações Em Python](https://i.howwhatproduce.com/images/005/image-12161-8-j.webp)
Concluídas as configurações apresentadas, podemos acessar o Sistema Linaro dentro da placa e utilizar várias linguagens como C ++, Java, Python, etc., para criar of software que será executado. Este software er ansvarlig for, at vi kan bruge sensorerne, processerne og de samme krav til programmerne. Depois carrega esses dados para o 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. Os dados são transferidos da Dragonboard 410c para o Unity e são apresentados em um app.
Seguem os códigos mag_python.py (leitor de dados do sensor), server2.py (Servidor local), Executável no Shell:
Sådan mag_python.py
#!/usr/bin/python
# Forfatter: Jon Trulson
# Copyright (c) 2015 Intel Corporation.
#
# Tilladelse gives hermed, gratis, til enhver person, der får
# en kopi af denne software og tilhørende dokumentationsfiler (# "Software"), til at handle i Softwaren uden begrænsninger, herunder
# uden begrænsning rettighederne til at bruge, kopiere, ændre, flette, offentliggøre, # distribuere, underlicensere og/eller sælge kopier af softwaren og til
# tillade personer, som Softwaren er leveret til, at gøre det, med forbehold af
# følgende betingelser:
#
# Ovenstående meddelelse om ophavsret og denne tilladelsesmeddelelse skal være
# inkluderet i alle kopier eller væsentlige dele af softwaren.
#
# SOFTWAREN LEVERES "SOM DEN ER" UDEN GARANTI AF NOGEN Slag, # UDTRYK ELLER UNDERFORSTÅET, INKLUDERENDE, MEN IKKE BEGRÆNSET TIL GARANTIERNE FOR
# SALGSMÆSSIGHED, PASSE TIL ET SÆRLIGT FORMÅL OG
# IKKE OVERTRÆDELSE. UDEN EVENTUELLE SKAL FORFATTERNE ELLER COPYRIGHT -indehaverne være
# ANSVAR FOR ALLE KRAV, SKADER ELLER ANDET ANSVAR, OM I EN HANDLING
# AF KONTRAKT, TORT ELLER ANDET, STAMMER FRA, UDEN ELLER I FORBINDELSE
# MED SOFTWAREN ELLER BRUGEN ELLER ANDRE HANDLINGER I SOFTWAREN.
fra _future_ import print_function
importtid, sys, signal, atexit, urllib, urllib2, matematik
fra upm import pyupm_mpu9150 som sensorObj
def main ():
# data = {}
# data ['magnetrometro'] = raw_input ("Informer en temperatura")
# data = urlib.urlencode (data)
# post_request = urlib2. Request (post_url, data, headers)
# prøve:
# post_response = urlib2.urlopen (post_anmodning)
# print post_response.read ()
# undtagen URLError som e:
# print "Fejl:", e.reason
# Instantier en MPU9250 på I2C bus 0
sensor = sensorObj. MPU9250 ()
## Exit handlers ##
# Denne funktion stopper python fra at udskrive et stacktrace, når du rammer control-C
def SIGINTHandler (signum, frame):
hæve SystemExit
# Denne funktion lader dig køre kode ved exit
def exitHandler ():
print ("Afslutter")
sys.exit (0)
# Registrer exit -behandlere
atexit.register (exitHandler)
signal.signal (signal. SIGINT, SIGINTHandler)
sensor.init ()
x = sensorObj.new_floatp ()
y = sensorObj.new_floatp ()
z = sensorObj.new_floatp ()
mens (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
# print (modulo1)
modulo1 = (" %.1f" % abs (((modulo1 ** 0.5) -1)*9.8))
# print (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.getMagnetometer (x, y, z)
# print ("Magnetometer: 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
# print (modulo2)
modulo2 = (" %.2f" % (modulo2 ** 0.5))
# print (modulo2)
arq = open ('/tmp/dados.txt', 'w')
texto =
texto.append (str (modulo2)+","+str (modulo1))
arq.writelines (tekst)
arq.close ()
# link = ('https://data.sparkfun.com/input/0lwWlyRED5i7K0AZx4JO?private_key=D6v76yZrg9CM2DX8x97B&mag='+str(modulo2))
# print ('enviando dados')
# send = urllib2.urlopen (link)
# side = send.read ()
# print (side)
# link = ('https://data.sparkfun.com/input/1noGndywdjuDGAGd6m5K?private_key=0mwnmR9YRgSxApAo0gDX&acel='+str(modulo1))
# print ('enviando dados')
# send = urllib2.urlopen (link)
# side = send.read ()
# print (side)
# print ("Temperatur:", sensor.getTemperature ())
# Print()
# time.sleep (.5)
hvis _name_ == '_main_':
main ()
Lokal service
importtid
import BaseHTTPServer
HOST_NAME = '172.17.56.9' # !!! HUSK AT ÆNDRE DETTE !!!
PORT_NUMBER = 80 # Måske indstil dette til 9000.
a = 0
klasse MyHandler (BaseHTTPServer. BaseHTTPRequestHandler):
def do_HEAD (s):
s.send_response (200)
s.send_header ("Indholdstype", "tekst/html")
s.end_headers ()
def do_GET (s):
dados = le_dados ()
tryk (dados)
"" "Svar på en GET -anmodning." ""
hvis s.path == "/1":
s.send_response (200)
s.send_header ("Indholdstype", "tekst/almindelig")
s.end_headers ()
s.wfile.write (dados)
elif s.path == "/2":
s.send_response (200)
s.send_header ("Indholdstype", "tekst/almindelig")
s.end_headers ()
s.wfile.write ("2")
andet:
s.send_response (200)
s.send_header ("Indholdstype", "tekst/almindelig")
s.end_headers ()
s.wfile.write (dados)
#s.wfile.write ("ikke fundet !!")
def le_dados ():
arq = open ('/tmp/dados.txt', 'r')
texto = arq.readline ()
arq.close ()
returner tekst
hvis _name_ == '_main_':
server_class = BaseHTTPServer. HTTPServer
httpd = server_klasse ((HOST_NAME, PORT_NUMBER), MyHandler)
print time.asctime (), "Server starter - %s: %s" %(HOST_NAME, PORT_NUMBER)
prøve:
a = a+2
httpd.serve_forever ()
undtagen KeyboardInterrupt:
passere
httpd.server_close ()
print time.asctime (), "Server stopper - %s: %s" %(HOST_NAME, PORT_NUMBER)
Código de Execução dos Códigos anteriores no Shell
#!/bin/bash
ekko "starter mag_python"
sudo python mag_python.py &
ekko "start server"
sudo python server2.py
Trin 6: Resultado Final
![Resultado Final Resultado Final](https://i.howwhatproduce.com/images/005/image-12161-9-j.webp)
Feito isso as aulas poderão ser auxiliadas and incrementadasas to projeto Smart Lesson desenvolvido com a Dragonboard 410c. Servicen til facilitator og proporcionando um maior aprendizado nos sistemas de ensino tanto público quanto privado.
LINK til app no Google Play:
Link til cydigos Py:
Anbefalede:
Smart skrivebord LED -lys - Smart Lighting W/ Arduino - Neopixels -arbejdsområde: 10 trin (med billeder)
![Smart skrivebord LED -lys - Smart Lighting W/ Arduino - Neopixels -arbejdsområde: 10 trin (med billeder) Smart skrivebord LED -lys - Smart Lighting W/ Arduino - Neopixels -arbejdsområde: 10 trin (med billeder)](https://i.howwhatproduce.com/images/001/image-1333-j.webp)
Smart skrivebord LED -lys | Smart Lighting W/ Arduino | Neopixels Workspace: Nu til dage bruger vi meget tid derhjemme, studerer og arbejder virtuelt, så hvorfor ikke gøre vores arbejdsområde større med et brugerdefineret og smart belysningssystem Arduino og Ws2812b LED'er baseret. Her viser jeg dig, hvordan du bygger din Smart Skrivebord LED -lys, der
Hardware og software Hack Smart Devices, Tuya og Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: 7 trin
![Hardware og software Hack Smart Devices, Tuya og Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: 7 trin Hardware og software Hack Smart Devices, Tuya og Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: 7 trin](https://i.howwhatproduce.com/images/005/image-14272-j.webp)
Hardware og software Hack Smart Devices, Tuya og Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: I denne instruktør viser jeg dig, hvordan jeg blinkede flere smarte enheder med min egen firmware, så jeg kan styre dem med MQTT via min Openhab -opsætning. Jeg tilføjer nye enheder, da jeg hackede dem. Selvfølgelig er der andre software -baserede metoder til at blinke brugerdefinerede
Smart vækkeur: et smart vækkeur lavet med hindbær Pi: 10 trin (med billeder)
![Smart vækkeur: et smart vækkeur lavet med hindbær Pi: 10 trin (med billeder) Smart vækkeur: et smart vækkeur lavet med hindbær Pi: 10 trin (med billeder)](https://i.howwhatproduce.com/images/007/image-19330-j.webp)
Smart vækkeur: et smart vækkeur lavet med Raspberry Pi: Har du nogensinde ønsket et smart ur? I så fald er dette løsningen for dig! Jeg lavede Smart Alarm Clock, dette er et ur, hvor du kan ændre alarmtiden i henhold til webstedet. Når alarmen går, kommer der en lyd (summer) og 2 lyser
Lektion 2: Brug af Arduino som strømkilde til et kredsløb: 6 trin
![Lektion 2: Brug af Arduino som strømkilde til et kredsløb: 6 trin Lektion 2: Brug af Arduino som strømkilde til et kredsløb: 6 trin](https://i.howwhatproduce.com/images/005/image-12818-21-j.webp)
Lektion 2: Brug af Arduino som strømkilde til et kredsløb: Hej igen, studerende, til min anden lektion i mit kursus for at undervise i grundlæggende elektronik. For dem, der ikke har set min første lektion, som beskriver det meget, meget grundlæggende i kredsløb, kan du se det nu. For dem, der allerede har set mit tidligere le
Java Workshop - Lektion #1: 9 trin
![Java Workshop - Lektion #1: 9 trin Java Workshop - Lektion #1: 9 trin](https://i.howwhatproduce.com/images/001/image-1031-60-j.webp)
Java Workshop - Lektion #1: Velkommen fra Java Workshop - Lektion #1. Denne lektion leveres til dig af klasse Code () hos Virginia Tech