Turinys:
- 1 žingsnis: bendravimas
- 2 žingsnis: „Dragonboard 410c Com Mezzanine 96“Lentos: „Configuração E Pinagem“
- 3 žingsnis: Integracija: „Unity + Vuforia“
- 4 veiksmas: „Unity“: sukonfigūruokite „Android“SDK
- 5 veiksmas: „Criando Servidor Local E Recebendo“informacija apie „Python“
- 6 žingsnis: galutinis rezultatas
Video: Išmanioji pamoka: 6 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
O projeto „Smart Lesson“viza, skirta gamintojams, neturintiems kvalifikacijos profesoriams, turintiems galimybę naudotis komitetais ir gauti daugiau informacijos apie pirmąjį sezoną, bet ne iš anksto, o ne apie tai, kad aprendizado muito superior por conseguir mostrar os conteúdos de forma dinâmica e interativa, proporcingando experience não presencia de aula konvencional.
1 žingsnis: bendravimas
Programuokite „Dragonboard 410c“:
- „Dragonboard 410c“;
- „Cabo HDMI“;
-„Teclado“per USB -pelė per USB -monitorius;
- tarpinės 96 lentos;
Projektas:
- „Dragonboard 410c“;
- tarpinės 96 lentos;
- jutiklio giraitė IMU 10DOF MPU - 9250 (não limitado ao uso de um único sensor);
- Fonte de alimentação externa 11,1 V;
- megztinis fêmea-fêmea;
2 žingsnis: „Dragonboard 410c Com Mezzanine 96“Lentos: „Configuração E Pinagem“
„O Shield Mezzanine deve ser acoplado à placa Dragonboard 410c, para que haja fornecimento de saída 3.3V / 5V (lygio perjungiklis), nuodija placą fornece 1.8V de saída. O jutiklis naudojamas magneto metro jutikliui MPU -9250 Grove -IMU 10DOF, konkrečiai:
Tensão de Entrada: 5V / 3.3V;
Funkcija: 6mA;
Comunicação serialas;
Pinos: VCC, GND, SDA ir SCL;
I2C sąsaja;
Kaip pavyzdį galima naudoti naudojant Grove I2C0 (5V), kuri yra proporcinga komunikacinei serijai ir reikalinga aliarmo funkcijai. (ver imagem)
3 žingsnis: Integracija: „Unity + Vuforia“
1- V ao svetainė da vuforia na area de desenvolvedor e crie uma chave.
2- Paspauskite skirtuką „Target Manager“ir atidžiai stebėkite tekstūrą, skirtą fazerui arba stebėjimui („quanto mais complexa melhor“).
3- „Feito isso baixe“ir „Unity e importe“duomenų bazė.
4- Nėra „Unity“konfigūruoti vaizdo taikinio teksto ir eskizo modeliuose bei 3D modelių 3D modelių naudojimo įrankiuose, kur galima rasti vaizdą, skirtą vietinei pelos programai.
5- „Unity“licencijuotos licencijos suteikimas.
6- Após isso modele os komponentai da aula em algum program 3D ir pasiruošti kaip aulas em cima do image target (pode ser uma aula de Biologia ou Física…).
4 veiksmas: „Unity“: sukonfigūruokite „Android“SDK
1- „Baixe“arba „SDK“„Android“, „Unity“parinktys ir pasirinkimas.
2- Mude a build plataform do Unity for android, assim conseguiremos gerar o APK.
3- Įdiekite arba įdiekite „em em dispozivo“(neleiskite šriftų, leidžiančių naudoti konfigūraciją).
5 veiksmas: „Criando Servidor Local E Recebendo“informacija apie „Python“
Sutelkti kaip konfigūracijos apresentadas, podemos acessar arba Sistema Linaro dentro da placa e utilizar várias linguagens como C ++, Java, Python, etc., para criar o software que sera executado. Paleiskite programinę įrangą ir atsakykite į imtuvą, kad gautumėte pelės jutiklį, procesorių ir tratarinį estą, kad patikėtumėte pelės programą. 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. Yra „Dragonboard 410c“duomenų perdavimo programa, skirta „Unity“ir „apresentados“programoms.
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
# Autorius: Jonas Trulsonas
# Autorių teisės (c) 2015 m. „Intel Corporation“.
#
# Leidimas nemokamai suteikiamas bet kuriam gavusiam asmeniui
# šios programinės įrangos ir susijusių dokumentų failų kopija (# „Programinė įranga“), kad be apribojimų dirbtumėte su Programine įranga, įskaitant
# be apribojimų teisės naudoti, kopijuoti, keisti, sujungti, publikuoti, # platinti, sublicencijuoti ir (arba) parduoti Programinės įrangos kopijas ir
# leisti asmenims, kuriems suteikta Programinė įranga, tai padaryti
# šios sąlygos:
#
# Aukščiau pateiktas pranešimas apie autorių teises ir šis leidimas turi būti
# yra įtrauktas į visas programinės įrangos kopijas ar dideles dalis.
#
# PROGRAMINĖ ĮRANGA TEIKIAMA „tokia, kokia yra“, BE JOKIŲ GARANTIJŲ, # IŠSKIRTAS AR PATVIRTINTAS, ĮSKAIČIUOTAS, bet neapsiriboja GARANTIJOMIS
# PERKELBTINUMAS, TINKAMUMAS YPATINGAM TIKSLUI IR
# NEPAKALBIMAS. NIEKADA NEGALIMA BŪTI AUTORIŲ AR AUTORIŲ TEISIŲ
# ATSAKOMYBĖ UŽ BET KURĮ PRAŠYMĄ, ŽALĄ AR KITĄ ATSAKOMYBĘ VEIKSME
SUTARTIES, SKUNDINIMO AR KITO, KELIANČIO IŠ, NĖRA AR SUSIJĘ
# SU PROGRAMINE ĮRANGA AR NAUDOJIMUIS AR KITAIS PROGRAMINĖS ĮRANGOS PASIŪLYMAIS.
iš _future_ importavimo spausdinimo_funkcijos
importo laikas, sys, signalas, atexit, urllib, urllib2, math
iš upm importuoti pyupm_mpu9150 kaip sensorObj
def main ():
# duomenų = {}
# data ['magnetrometro'] = raw_input ("Informe a Temperatura")
# duomenys = urlib.urlencode (duomenys)
# post_request = urlib2. Request (post_url, duomenys, antraštės)
# bandyti:
# post_response = urlib2.urlopen (post_request)
# print post_response.read ()
# išskyrus URL Klaida kaip e:
# spausdinti „Klaida:“, e. priežastis
# Įveskite MPU9250 I2C magistralėje
jutiklis = sensorObj. MPU9250 ()
## Išėjimų tvarkytojai ##
# Ši funkcija neleidžia „python“spausdinti kamino sekos, kai paspaudžiate „Control-C“
def SIGINTHandler (ženklas, rėmas):
pakelti „SystemExit“
# Ši funkcija leidžia paleisti kodą išeinant
def exitHandler ():
spausdinti („Išeiti“)
sys.exit (0)
# Registruokite išėjimo tvarkytojus
atexit.register (exitHandler)
signal.signal (signal. SIGINT, SIGINTHandler)
sensor.init ()
x = sensorObj.new_floatp ()
y = sensorObj.new_floatp ()
z = sensorObj.new_floatp ()
tuo tarpu (1):
sensor.update ()
sensor.getAccelerometer (x, y, z)
# print („Akselerometras:“)
# print ("AX: %.4f" % sensorObj.floatp_value (x), end = '')
# print ("AY: %.4f" % sensorObj.floatp_value (y), pabaiga = '')
# 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
# spausdinimas (modulo1)
modulo1 = (" %.1f" % abs (((modulo1 ** 0.5) -1)*9.8))
# spausdinimas (modulo1)
#
# sensor.getGiroskopas (x, y, z)
# print ("Giroskopas: GX:", sensorObj.floatp_value (x), end = '')
# print ("GY:", sensorObj.floatp_value (y), pabaiga = '')
# print ("GZ:", sensorObj.floatp_value (z))
sensor.getMagnetometras (x, y, z)
# print ("Magnetometras: MX:", sensorObj.floatp_value (x), end = '')
# print ("MY:", sensorObj.floatp_value (y), pabaiga = '')
# print ("MZ:", sensorObj.floatp_value (z))
modulo2 = sensorObj.floatp_value (x) ** 2+sensorObj.floatp_value (y) ** 2+sensorObj.floatp_value (z) ** 2
# spausdinimas (modulo2)
modulo2 = (" %.2f" % (modulo2 ** 0,5))
# spausdinimas (modulo2)
arq = atviras ('/tmp/dados.txt', 'w')
tekstas =
texto.append (str (modulo2)+","+str (modulo1))
arq.writelines (tekstas)
arq.close ()
# link = ('https://data.sparkfun.com/input/0lwWlyRED5i7K0AZx4JO?private_key=D6v76yZrg9CM2DX8x97B&mag='+str(modulo2)]
# print ('enviando dados')
# send = urllib2.urlopen (nuoroda)
# puslapis = send.read ()
# spausdinimas (puslapis)
# link = ('https://data.sparkfun.com/input/1noGndywdjuDGAGd6m5K?private_key=0mwnmR9YRgSxApAo0gDX&acel='+str(modulo1))
# print ('enviando dados')
# send = urllib2.urlopen (nuoroda)
# puslapis = send.read ()
# spausdinimas (puslapis)
# print ("Temperatūra:", sensor.getTemperature ())
# spausdinimas ()
# time.sleep (.5)
jei _vardas_ == '_main_':
pagrindinis ()
Código do Servidor Local
importo laikas
importuoti „BaseHTTPServer“
HOST_NAME = '172.17.56.9' # !!! PRISIMINKITE ŠĮ KEISTI !!!
PORT_NUMBER = 80 # Galbūt nustatykite tai į 9000.
a = 0
„MyHandler“klasė (BaseHTTPServer. BaseHTTPRequestHandler):
def do_HEAD (-ai):
s.send_response (200)
s.send_header („Turinio tipas“, „tekstas/html“)
s.end_headers ()
def do_GET (-ai):
dados = le_dados ()
spausdinti (dados)
"" "Atsakykite į GET užklausą." ""
jei s.path == "/1":
s.send_response (200)
s.send_header („Turinio tipas“, „tekstas/paprastas“)
s.end_headers ()
s.wfile.write (dados)
elif s.path == "/2":
s.send_response (200)
s.send_header („Turinio tipas“, „tekstas/paprastas“)
s.end_headers ()
s.wfile.write ("2")
Kitas:
s.send_response (200)
s.send_header („Turinio tipas“, „tekstas/paprastas“)
s.end_headers ()
s.wfile.write (dados)
#s.wfile.write ("nerasta !!")
def le_dados ():
arq = atviras ('/tmp/dados.txt', 'r')
texto = arq.readline ()
arq.close ()
grąžinti tekstą
jei _vardas_ == '_main_':
server_class = BaseHTTPServer. HTTPServer
httpd = server_class ((HOST_NAME, PORT_NUMBER), „MyHandler“)
print time.asctime (), „Serveris paleidžiamas - %s: %s“%(HOST_NAME, PORT_NUMBER)
bandyti:
a = a+2
httpd.serve_forever ()
išskyrus klaviatūrąInterrupt:
praeiti
httpd.server_close ()
print time.asctime (), „Serverio sustojimai - %s: %s“%(HOST_NAME, PORT_NUMBER)
„Código de Execução dos Códigos anteriores no Shell“
#!/bin/bash
echo "pradedant mag_python"
sudo python mag_python.py &
echo "paleisti serverį"
sudo python server2.py
6 žingsnis: galutinis rezultatas
„Feito“taip pat yra aux poderão ser pagalbinis ir papildomas pelės projektas „Smart Lesson“, skirtas „Dragonboard 410c“. Paslaugų teikimo ir palengvinimo paslaugos ir proporcijos
LINK „Google Play“programoje:
Nuoroda į „Códigos Py“:
Rekomenduojamas:
Išmanioji kristalų šviesos eilutė: 9 žingsniai (su nuotraukomis)
Išmanioji kristalų šviesos eilutė: artėjant Kalėdoms ir visapusiškai tiriu namų automatizavimą ir išmaniuosius objektus, šiais metais nusprendžiau pabandyti sukurti protingą, gražiai atrodančią RGB šviesos stygą. Atlikau daug tyrimų apie „pasidaryk pats“sprendimus internete, viena vertus, kai kurie dalykai
Išmanioji šiukšliadėžė naudojant „Arduino“, ultragarso jutiklį ir servo variklį: 3 žingsniai
Išmanioji šiukšliadėžė naudojant „Arduino“, ultragarsinį jutiklį ir servo variklį: Šiame projekte parodysiu, kaip padaryti išmaniąją šiukšliadėžę naudojant „Arduino“, kur šiukšliadėžės dangtis automatiškai atsidarys, kai artėsite prie šiukšlių. Kiti svarbūs komponentai, naudojami gaminant šią išmaniąją šiukšliadėžę, yra ultragarsinis jutiklis HC-04
„IoT“pagrįsta išmanioji parkavimo sistema naudojant „NodeMCU ESP8266“: 5 žingsniai
„IoT“pagrįsta išmanioji parkavimo sistema naudojant „NodeMCU ESP8266“: šiais laikais labai sunku rasti automobilių stovėjimo aikštelę judriose vietose ir nėra sistemos, leidžiančios gauti išsamią informaciją apie automobilių stovėjimo aikštelę internete. Įsivaizduokite, jei galite gauti informaciją apie automobilių stovėjimo aikštelės prieinamumą savo telefone ir neturite tarptinklinio ryšio, kad patikrintumėte
Išmanioji šiukšliadėžė: 6 žingsniai
Protingas šiukšliadėžė: Sveiki, vaikinai !!! Aš esu Vedaanshas Verdhanas. Ir šiandien aš jums parodysiu, kaip pasidaryti savo išmaniąją šiukšliadėžę. Sekite mane „Instragram“, kad gautumėte informacijos apie kitą mano projektą. Pradėkime !!!! Instragramos sąskaita: --- robotika_08
Išmanioji šiukšliadėžė iš „Magicbit“: 5 žingsniai
Išmanioji šiukšliadėžė iš „Magicbit“: šioje pamokoje sužinosime, kaip pasigaminti išmaniąją šiukšliadėžę naudojant „Magicbit dev“. lenta su „Arduino IDE“. Pradėkime