INHOUDSOPGAWE:
- Stap 1: Dinge wat u benodig
- Stap 2: Abstract
- Stap 3: Die basiese idee
- Stap 4: Walabot
- Stap 5: Aan die gang
- Stap 6: Die opstel van die Raspberry Pi - 1
- Stap 7: Die opstel van die Raspberry Pi - 2
- Stap 8: Die opstel van die Raspberry Pi - 3
- Stap 9: Die opstel van die Raspberry Pi - 4
- Stap 10: Python
- Stap 11: Vir die Walabot
- Stap 12: Vir die Servo -koppelvlak
- Stap 13: Vir die LCD
- Stap 14: Blynk
- Stap 15: Konfigureer die Blynk -app
- Stap 16: U kan hierdie QR -kode met die Blynk -app gebruik om my projek te kloon om u tyd te bespaar
- Stap 17: hardloop Blynk met die Raspberry Pi en gebruik die Blynk HTTPS vir Python
- Stap 18: outomatiese uitvoering van die script
- Stap 19: Die hardeware
- Stap 20: Omhulselontwerp
- Stap 21: Guts Shots
- Stap 22: Finale samestellingskote
- Stap 23: Om die Walabot aan die staander vas te maak
- Stap 24: Hardeware STL -lêers vir 3D -druk
- Stap 25: Skema's vir die bedrading van die saak
- Stap 26: Kode
- Stap 27: Github -bewaarplekke om te gebruik
- Stap 28: Gevolgtrekking
Video: Walabot FX - Guitar Effect Control: 28 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:28
Beheer u gunsteling kitaar -effek met niks anders as ongelooflike kitaarposes nie!
Stap 1: Dinge wat u benodig
Hardeware komponente
Walabot - Walabot
Raspberry Pi - Raspberry Pi 3 Model B
Sunfounder LCD1602
SunFounder PCA9685 16-kanaals 12-bits PWM-servostuurprogramma vir Arduino en Raspberry Pi
Servo (generies) Geen skakel nie
9V-batteryklem
4xAA batteryhouer
AA -batterye
Springdrade (generies)
DPDT-voetskakelaar vir vergrendeling van aksie
Korg SDD3000-PDL
Sagteware -bedryfstelsels, programme en aanlyndienste
Autodesk Fusion360 -
Blynk -
Gereedskap ens
3D -drukker
Soldeerbout
Stap 2: Abstract
Hoe sou dit wees om die musikale uitdrukking te beheer met slegs die posisie van u kitaar in 3D -ruimte? Wel, laat ons iets prototipeer en uitvind!
Stap 3: Die basiese idee
Ek wou die 3 -effekparameter in reële tyd kon beheer; ek wou dit doen met behulp van hoe ek my kitaar posisioneer. Een ding was dus duidelik: ek het 'n paar dinge nodig.
- 'N Sensor wat 3D -ruimte kan sien
- Servo's om die knoppe te draai
- 'N LCD -skerm
- 'N I2C Servo -bestuurder
- 'N Framboos Pi
- Om Python te leer
Stap 4: Walabot
Wil u deur mure kyk? Sinvolle voorwerpe in 3D -ruimte? Gevoel as u asemhaal uit die kamer? Wel, jy het geluk!
Die Walabot is 'n heel nuwe manier om die ruimte rondom u te sien met behulp van radar met lae krag.
Dit sou die sleutel tot hierdie projek wees; ek sou die carteasan (XY-Z) koördinate van voorwerpe in die 3D-ruimte kon neem, en dit kon karteer na servoposisies wat verander hoe 'n kitaar-effek klink, in reële tyd, sonder om aan die pedaal te raak.
Wen.
Meer inligting oor die Walabot kan hier gevind word
Stap 5: Aan die gang
Eerstens het u 'n rekenaar nodig om die Walabot te bestuur; vir hierdie projek gebruik ek 'n Raspberry Pi 3 (hierna verwys na by RPi) as gevolg van die ingeboude WiFi en algemene ekstra oomph
Ek het 'n 16 GB SD -kaart gekoop met NOOBS vooraf geïnstalleer om dinge mooi en eenvoudig te hou, en het gekies om Raspian as my Linux -bedryfstelsel van keuse te installeer
(as u nie vertroud is met die installering van Raspian nie, neem 'n rukkie om dit bietjie te lees)
OK, sodra u Raspian op u RPi begin gebruik het, is daar 'n paar konfigurasiestappe wat u moet neem om dinge vir ons projek gereed te kry
Stap 6: Die opstel van die Raspberry Pi - 1
Maak eers seker dat u die nuutste Kernel -weergawe gebruik en kyk na opdaterings deur 'n opdragskulp oop te maak en te tik
sudo apt-get update
sudo apt-get dist-upgrade
(sudo word bygevoeg om te verseker dat u administratiewe voorregte het, bv. dinge werk)
Dit kan 'n rukkie neem om te voltooi, so gaan drink 'n lekker koppie tee.
Stap 7: Die opstel van die Raspberry Pi - 2
U moet die Walabot SDK vir RPi installeer. Gaan na u RPi -webblaaier na https://www.walabot.com/gettingstarted en laai die Raspberry Pi Installer Package af.
Vanuit 'n opdrag dop:
cd aflaai
sudo dpkg -I walabotSDK_RasbPi.deb
Stap 8: Die opstel van die Raspberry Pi - 3
Ons moet begin om die RPi op te stel om die i2c -bus te gebruik.
sudo apt-get install python-smbus
sudo apt-get install i2c-tools
sodra dit gedoen is, moet u die volgende by die modules lêer voeg
Vanuit 'n opdrag dop:
sudo nano /etc /modules
voeg hierdie 2 snare op aparte lyne by:
i2c-dev
i2c-bcm2708
Stap 9: Die opstel van die Raspberry Pi - 4
Die Walabot trek 'n redelike stroom, en ons sal ook GPIO's gebruik om dinge te beheer, sodat ons dit moet opstel
Vanuit 'n opdrag dop:
sudo nano /boot/config.txt
voeg die volgende reëls aan die einde van die lêer by:
safe_mode_gpio = 4
max_usb_current = 1
Die RPi is 'n uitstekende hulpmiddel vir makers, maar dit is beperk in die stroom wat dit na die Walabot kan stuur. Daarom voeg ons 'n maksimum stroom van 1 ampère toe eerder as die meer standaard 500mA
Stap 10: Python
Waarom Python? Aangesien dit baie maklik is om te kodeer, vinnig aan die gang is en daar is baie goeie luislang voorbeelde beskikbaar! Ek het dit nog nooit gebruik nie en was binnekort aan die gang. Nou is die RPi gekonfigureer vir wat ons wil hê; die volgende stap is om Python op te stel om toegang te hê tot die Walabot API, LCD Servo -koppelvlakke
Stap 11: Vir die Walabot
Van 'n opdrag dop
Sudo pip installeer “/usr/share/walabot/python/WalabotAPI-1.0.21.zip”
Stap 12: Vir die Servo -koppelvlak
Van 'n opdrag dop
sudo apt-get install git build-essential python-dev
cd ~
git -kloon
cd Adafruit_Python_PCA9685
sudo python setup.py installeer
Waarom moet ons 'n servobestuurder gebruik? Om 'n RPi 'n paar redes.
1. Die stroom wat deur 'n servo getrek word, kan baie hoog wees, en die getal word groter hoe meer servo's u het (natuurlik). As u die servo directky van 'n RPi ry, loop u die risiko om die kragtoevoer te blaas
2. Die tydsberekening van die PWM (Pulse Width Modulation) wat die servos se posisie beheer, is baie belangrik. Aangesien die RPi nie 'n intydse bedryfstelsel gebruik nie (daar kan onderbrekings wees), is die tydsberekening nie akkuraat nie en kan die servo's senuweeagtig ruk. 'N Toegewyde bestuurder laat akkurate beheer toe, maar kan ook tot 16 servo's byvoeg, so dit is ideaal vir uitbreiding.
Stap 13: Vir die LCD
maak u RPi -blaaier oop
www.sunfounder.com/learn/category/sensor-k…
Aflaai
github.com/daveyclk/SunFounder_SensorKit_…
Vanuit 'n opdrag dop:
sudo mkdir/usr/share/sunfounder
Gebruik die grafiese verkenner om die python -gids uit die zip -lêer te kopieer na die nuwe sunfounder -lêergids
Die LCD word gebruik om die gebruiker te vra wat presies aan die gang is. Toon die konfigurasieproses tot die x-, y- en z -waardes wat op elke servo gekarteer word
Stap 14: Blynk
Blynk is 'n briljante IoT -diens waarmee u 'n pasgemaakte app kan skep om u goed te beheer. Dit het gelyk asof dit die perfekte oplossing was om vir my 'n afstandsbediening van die walabot te gee om die instellings regtig in te skakel …
Een probleem. Blynk word tans nie op die Python -platform ondersteun nie, bugger. Maar moenie vrees nie! ek kon 'n goeie werk vind wat afstandbeheer en parameterinvoer op afstand moontlik maak! dit is 'n bietjie hacky
Die eerste stap is om die Blynk -app van u gunsteling appwinkel af te laai
Tweedens, teken aan vir 'n rekening
Sodra dit klaar is, maak die app oop en begin 'n nuwe projek, en kies Raspberry Pi 3 as die hardeware.
Die app gee u 'n toegangsteken (u benodig dit om u kode in te voer)
Sodra jy dit gedoen het. u moet die app instel soos op die beelde getoon word. Dit is hoe dit met die walabot sal koppel.
Stap 15: Konfigureer die Blynk -app
Stap 16: U kan hierdie QR -kode met die Blynk -app gebruik om my projek te kloon om u tyd te bespaar
OK Noudat die app opgestel is, kan ons Python en die RPi instel om daarmee oor die internet te praat. towerkuns
Stap 17: hardloop Blynk met die Raspberry Pi en gebruik die Blynk HTTPS vir Python
Eerstens moet u die Blynk HTTPS -omhulsel vir Python installeer
Vanuit 'n opdrag dop:
sudo git kloon
sudo pip installeer blynkapi
Tweedens moet u die Blynk -diens op die RPi installeer
Vanuit 'n opdrag dop:
git -kloon
cd blynk-biblioteek/linux
maak alles skoon
om die blynk -diens uit te voer
sudo./blynk --token = YourAuthToken
Om te verseker dat die Blynk -diens by die aanvang werk, moet u die /etc/rc.local verander
deur te doen
sudo nano /etc/rc.local
voeg dit aan die einde by
./blynk-library/linux/blynk --token = my token &
(Ek het 'n hantering van my /etc/rc.local -lêer in die kode -afdeling vir verwysing ingesluit)
Om te toets dat dit werk, tik eenvoudig
sudo /etc/rc.local begin
Die Blynk -diens behoort nou te wees
Stap 18: outomatiese uitvoering van die script
Noudat dit alles opgestel en gekonfigureer is, en ons die python -kode gereed het. ons kan dinge outomaties laat loop sodat ons die sleutelbord en monitors kan laat vaar
Daar is 'n paar dinge om te doen
Skep 'n nuwe scriptlêer om die Python -program uit te voer
sudo nano kitaareffek.sh
voeg hierdie reëls by
#!/bin/sh
python /home/pi/GuitarEffectCLI.py
maak seker dat u dit stoor
Vervolgens moet ons die script toestemming gee om deur te tik
Sudo chmod +x /home/pi/guitareffect.sh
En laastens moet ons hierdie skrif by die /etc/rc.local -lêer voeg waarmee ons vroeër gesukkel het.
Sudo nano /etc/rc.local
Voeg by
/home/pi/guitareffect.sh &
Maak seker dat u die '&' insluit, waardeur die Python -script op die agtergrond kan werk
Reg! Dit is al die konfigurasie en sagteware wat gesorteer is; daarna is dit tyd om die hardeware op te dra
Stap 19: Die hardeware
Eerste Breadboard prototipe
Stap 20: Omhulselontwerp
Die omhulsel is ontwerp en weergegee in die ongelooflike Fusion360
Stap 21: Guts Shots
Stap 22: Finale samestellingskote
Stap 23: Om die Walabot aan die staander vas te maak
Gebruik die selfklevende metaalskyf wat by die walabot kom, om dit reg te maak
Stap 24: Hardeware STL -lêers vir 3D -druk
Stap 25: Skema's vir die bedrading van die saak
Stap 26: Kode
Gebruik die aangehegte Python -script vir u projek
vanaf _future_ invoer afdrukfunksie vanaf sys invoerplatform vanaf ons invoerstelsel vanaf blynkapi invoer Blynk invoer WalabotAPI invoer tyd invoer RPi. GPIO as GPIO
#stel GPIO op met bord nommering
GPIO.setmode (GPIO. BOARD) GPIO.setup (18, GPIO. IN, pull_up_down = GPIO. PUD_UP)
#blynk auth -token
auth_token = "your_auth_token_here"
# Voer die PCA9685 -module in vir servobestuur.
voer Adafruit_PCA9685 in
#voer LCD -module vanaf die plek in
vanaf imp import load_source LCD1602 = load_source ('LCD1602', '/usr/share/sunfounder/Python/LCD1602.py')
# Begin die PCA9685 met die standaardadres (0x40).
pwm = Adafruit_PCA9685. PCA9685 ()
# blynk -voorwerpe
standaard = Blynk (auth_token, pin = "V9") start_button = Blynk (auth_token, pin = "V3") Rmax = Blynk (auth_token, pin = "V0") Rmin = Blynk (auth_token, pin = "V1") Rres = Blynk (auth_token, pin = "V2")
ThetaMax = Blynk (auth_token, pin = "V4")
ThetaRes = Blynk (auth_token, pin = "V5")
PhiMax = Blynk (auth_token, pin = "V6")
PhiRes = Blynk (auth_token, pin = "V7")
Drempel = Blynk (auth_token, pin = "V8")
ServoMin = Blynk (auth_token, pin = "V10")
ServoMax = Blynk (auth_token, pin = "V11")
def LCDsetup ():
LCD1602.init (0x27, 1) # init (slawe -adres, agtergrondlig)
def numMap (x, in_min, in_max, out_min, out_max): "" "gebruik vir die kartering van die walabot -lesings na servoposisie" "" return int ((x- in_min) * (out_max - out_min) / (in_max - in_min) + buite_min)
# gebruik dit om die rou data af te rond tot die toegewysde waarde
def myRound (x, base = 2): return int (base * round (float (x)/base))
#onttrek die getal uit die teruggekeerde blynk -string
def numberExtract (val): val = str (val) return int (filter (str.isdigit, val))
# Stel die frekwensie op 60Hz, goed vir servo's.
pwm.set_pwm_freq (60)
# Stel standaard min en maksimum servopulslengtes in
SERVO_MIN = 175 # Min polslengte uit 4096 SERVO_MAX = 575 # Max polslengte uit 4096
# walabot standaardwaardes
R_MAX = 60 R_MIN = 20 R_RES = 5
THETA_MAX = 20
THETA_RES = 5
PHI_MAX = 20
PHI_RES = 5
DREMPEL = 1
# veranderlikes vir blynk -skakel
op = "[u'1 ']"
klas Walabot:
def _init _ (self):
self.wlbt = WalabotAPI self.wlbt. Init () self.wlbt. SetSettingsFolder () self.isConnected = Valse self.isTargets = Onwaar
def blynkConfig (self):
load_defaults = defaults.get_val () if str (load_defaults) == on: SERVO_MAX = ServoMax.get_val () SERVO_MAX = numberExtract (SERVO_MAX) print ("Servo Max =", SERVO_MAX)
SERVO_MIN = ServoMin.get_val ()
SERVO_MIN = numberExtract (SERVO_MIN) druk ("Servo MIN =", SERVO_MIN) R_MAX = Rmax.get_val () R_MAX = numberExtract (R_MAX) druk ("R max =", R_MAX)
R_MIN = Rmin.get_val ()
R_MIN = getalExtract (R_MIN) druk ("R Min =", R_MIN)
R_RES = Rres.get_val ()
R_RES = numberExtract (R_RES) druk ("R Res =", R_RES)
THETA_MAX = ThetaMax.get_val ()
THETA_MAX = numberExtract (THETA_MAX) druk ("Theta Max =", THETA_MAX) THETA_RES = ThetaRes.get_val () THETA_RES = numberExtract (THETA_RES) druk ("Theta Res =", THETA_RES)
PHI_MAX = PhiMax.get_val ()
PHI_MAX = numberExtract (PHI_MAX) druk ("Phi Max =", PHI_MAX) PHI_RES = PhiRes.get_val () PHI_RES = numberExtract (PHI_RES) druk ("Phi Res =", PHI_RES)
THRESHOLD = Drempel.get_val ()
THRESHOLD = numberExtract (THRESHOLD) druk ("Threshold =", THRESHOLD)
anders: # as niks uit die blynk -app nie, laai standaard SERVO_MIN = 175 # Min polslengte uit 4096 SERVO_MAX = 575 # Max polslengte uit 4096
# walabot standaardwaardes
R_MAX = 60 R_MIN = 20 R_RES = 5
THETA_MAX = 20
THETA_RES = 5
PHI_MAX = 20
PHI_RES = 5
DREMPEL = 1
def connect (self): probeer: self.wlbt. ConnectAny () self.isConnected = True self.wlbt. SetProfile (self.wlbt. PROF_SENSOR) #self.wlbt. SetDynamicImageFilter (self.wlbt. FILTER_TYPE_MTI) self.wlbt. SetDyn. SetArenaR (R_MIN, R_MAX, R_RES) self.wlbt. SetThreshold (THRESHOLD) behalwe self.wlbt. WalabotError as err: as err.code! = 19: # 'WALABOT_INSTRUMENT_NOT_FOUND' verhoog fout
def start (self):
self.wlbt. Start ()
def kalibreer (self):
self.wlbt. StartCalibration ()
def get_targets (self):
self.wlbt. Trigger () terugkeer self.wlbt. GetSensorTargets ()
def stop (self):
self.wlbt. Stop ()
ontkoppel (self):
self.wlbt. Diskoppel ()
def main ():
flag = True check = "" LCDsetup () terwyl vlag: LCD1602.write (0, 0, 'Guitar') LCD1602.write (0, 1, 'Effect Control') time.sleep (2) LCD1602.write (0, 0, 'Druk Start om') LCD1602.write (0, 1, 'begin') time.sleep (2) if (str (check) == on): flag = Valse anders: check = start_button.get_val () # kyk of die startknoppie blynk druk as (GPIO.input (18) == 0): #kyk na voetschakelvlag = Onwaar
LCD1602.write (0, 0, "OK! Laat ons dit doen")
LCD1602.write (0, 1, '') wlbt = Walabot () wlbt.blynkConfig () wlbt.connect () LCD1602.clear () indien nie wlbt.isConnected: LCD1602.write (0, 0, 'Not Connected') anders: LCD1602.write (0, 0, 'Connected') time.sleep (2) wlbt.start () wlbt.calibrate () LCD1602.write (0, 0, 'Calibrating …..') time.sleep (3) LCD1602. skryf (0, 0, 'Begin Walabot')
appcheck = start_button.app_status () flag = True # reset vlag vir hoofprogram
terwyl vlag: # gebruik om effektief in werking te tree (effektief)
if (appcheck == True): if (str (check)! = on): if (GPIO.input (18)! = 0): #check footswitch flag = Valse anders: check = start_button.get_val () #kontroleer vir begin knoppie druk op appcheck = start_button.app_status ()
anders:
if (GPIO.input (18)! = 0): #kontroleer voetswitch vlag = Onwaar
xval = 0
yval = 0 zval = 0 gemiddelde = 2 vertragingstyd = 0
teikens = wlbt.get_targets ()
as len (teikens)> 0:
vir j in reeks (gemiddeld):
teikens = wlbt.get_targets ()
as len (teikens)> 0: druk (len (teikens)) teikens = teikens [0]
print (str (goals.xPosCm))
xval += int (goals.xPosCm) yval += int (goals.yPosCm) zval += int (goals.zPosCm) time.sleep (delayTime) anders: druk ("geen teikens") xval = xval/gemiddelde
xval = numMap (xval, -60, 60, SERVO_MIN, SERVO_MAX)
xval = myRound (xval) as xval SERVO_MAX: xval = SERVO_MAX LCD1602.write (0, 0, 'x =' + str (xval) + '') pwm.set_pwm (0, 0, xval)
yval = yval/gemiddelde
yval = numMap (yval, -60, 60, SERVO_MIN, SERVO_MAX)
yval = myRound (yval) as yval SERVO_MAX: yval = SERVO_MAX LCD1602.write (0, 1, 'y =' + str (yval)) pwm.set_pwm (1, 0, yval)
zval = zval/gemiddelde
zval = numMap (zval, R_MIN, R_MAX, SERVO_MIN, SERVO_MAX)
zval = myRound (zval) as zval SERVO_MAX: zval = SERVO_MAX LCD1602.write (8, 1, 'z =' + str (zval)) pwm.set_pwm (2, 0, zval)
anders:
druk ("geen teikens") LCD1602.write (0, 0, "Sluit af") LCD1602.write (0, 1, 'The Walabot') time.sleep (3) wlbt.stop () wlbt.disconnect ()
as _naam_ == '_hoof_':
terwyl True: main ()
vir die kitaareffek.sh
#!/bin/sh
cd /huis /pi
sudo python GuitarEffectCLI.py
'N Afskrif van die plaaslike RC -lêer vir verwysing
#!/bin/sh -e # # rc.local # # Hierdie script word uitgevoer aan die einde van elke multi -gebruiker -vlak. # Maak seker dat die skrif 'suksesvol' of 'n ander # waarde by fout "0" verlaat. # # Om hierdie script in of uit te skakel, verander net die uitvoering # bisse. # # Hierdie skrip doen standaard niks.
# Druk die IP -adres af
_IP = $ (gasheernaam -I) || waar as ["$ _IP"]; druk dan "My IP -adres is %s / n" "$ _IP" fi
./blynk-library/linux/blynk --token = "u teken gaan hierheen" &
slaap 10 sudo /home/pi/guitareffect.sh en verlaat 0
Stap 27: Github -bewaarplekke om te gebruik
Gebruik dit vir die Sunfounder LCD
github.com/daveyclk/SunFounder_SensorKit_f…
Gebruik dit vir die servobestuurder
github.com/daveyclk/Adafruit_Python_PCA968…
Gebruik dit vir die Blynk Python HTTPS Wrapper
github.com/daveyclk/blynkapi
Stap 28: Gevolgtrekking
Dit was 'n skerp leerkurwe, maar dit was die moeite werd.
My wegneemetes is
- Ek moes Python leer.. blyk dat dit 'n aas is
- Koppel die Python op die Raspberry Pi met die Blynk IoT -diens. Dit word nie amptelik ondersteun nie, so daar is 'n paar beperkings op die funksies daarvan. Werk nog steeds uitstekend!
- Dit blyk dat die Walabot ideaal is vir musikale uitdrukking. Ek het dit op 'n Korg SDD3000 gebruik, maar u kan enige effek gebruik wat u wil
Gaan self. Dit is nie beperk tot kitaar -effekte nie; ek kan met enige instrument met enige effek gebruik word.
Naaswenner in die Raspberry Pi -wedstryd 2017
Aanbeveel:
Hall Effect USB -joystick: 7 stappe (met foto's)
Hall Effect USB joystick: Hierdie instruksies wys hoe u 'n industriële Hall Effect joystick kan gebruik om 'n hoë joystick met 'n hoë presisie te maak
DIY Interessante Love Heart Chasing Effect LED -ligte: 8 stappe (met foto's)
DIY Interessante Love Heart Chasing Effect LED Lights: Hierdie struktuur dek hoe u wonderlike magiese jaag -effek LED -ligte kan maak vir u geliefde, pa, ma, klasmaats en goeie vriende. Dit is redelik maklik om te bou solank u geduld het. Ek beveel aan dat u soldeerervaring het as u bou
Dusty Wall Arduino Animated Led Lamp with Light Effect: 11 Stappe (met foto's)
Dusty Wall Arduino Animated Led Lamp With Light Effect: Ek het pas 'n baba gekry en nadat ek sy slaapkamer gedoen het, het ek 'n lamp teen 'n muur nodig gehad. Omdat ek baie lief is vir LED, het ek besluit om iets te skep. Ek hou ook van vliegtuie in die algemeen, so hoekom sit u nie 'n vliegtuig uit 'n tekenprent op die muur nie, hier soos dit begin en hoe ek dit gedoen het. Hoop
Hoe om 'n rekenaar met maklike stappe en foto's uitmekaar te haal: 13 stappe (met foto's)
Hoe om 'n rekenaar uitmekaar te haal met eenvoudige stappe en foto's: dit is 'n instruksie oor hoe om 'n rekenaar uitmekaar te haal. Die meeste basiese komponente is modulêr en kan maklik verwyder word. Dit is egter belangrik dat u daaroor georganiseerd is. Dit sal u verhinder om onderdele te verloor, en ook om die montering weer
Hall Effect Sensor op Arduino met behulp van Fidget Spinner: 3 stappe (met foto's)
Hall -effek sensor op Arduino met behulp van Fidget Spinner: Abstract In hierdie projek verduidelik ek hoe hall -effek sensor werk om fidget spinner snelheid te meet met arduino board. werk:-'n Hall-effek sensor is 'n transducer wat sy uitsetspanning wissel in reaksie op 'n magnetiese veld. Hall -effek