Sisukord:

Nutikas õppetund: 6 sammu
Nutikas õppetund: 6 sammu

Video: Nutikas õppetund: 6 sammu

Video: Nutikas õppetund: 6 sammu
Video: 6 урок "Начни свою христианскую жизнь" - Торбен Сондергаард. 2024, Juuli
Anonim
Nutikas õppetund
Nutikas õppetund

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

Materiais
Materiais

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

Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
Dragonboard 410c Com Mezzanine 96Boards: Configuração E Pinagem
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 (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

Integratsioon: Unity + Vuforia
Integratsioon: 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

Unity: seadistage Android SDK
Unity: seadistage 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

Criando Servidor Local E Recebendo Info Python
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

Tulemus finaal
Tulemus 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: