Turinys:

Viso pasaulio mikrovaldiklio nuoroda už mažiau nei 20 USD: 15 žingsnių
Viso pasaulio mikrovaldiklio nuoroda už mažiau nei 20 USD: 15 žingsnių

Video: Viso pasaulio mikrovaldiklio nuoroda už mažiau nei 20 USD: 15 žingsnių

Video: Viso pasaulio mikrovaldiklio nuoroda už mažiau nei 20 USD: 15 žingsnių
Video: Daugiau nei kava: Golangas. Kodėl „Java“ kūrėjai mokosi GO kaip antrosios kalbos. 2024, Lapkritis
Anonim
Viso pasaulio mikrovaldiklio nuoroda už mažiau nei 20 USD
Viso pasaulio mikrovaldiklio nuoroda už mažiau nei 20 USD

Valdykite savo namų termostatą nuo darbo. Įjunkite purkštuvą iš bet kurios pasaulio vietos spustelėdami jungiklį. Šioje instrukcijoje parodyta, kaip susieti du ar daugiau 4 USD vertės mikrovaldiklius naudojant interneto pagrindą ir paprastą VB. Net kodą. Tai grindžiama ankstesniu „Instructable“, kuriame parodyta, kaip susieti mikrovaldiklį su kompiuteriu ir naudoti puodą servo https valdymui: //www.instructables.com/id/Control-real-world-devices-with-your-PC/ Šį kartą turime mikrovaldiklį, kalbantį su „VB. Net“programa, tada-su ftp svetaine, atgal į kitą „VB. Net“programą ir tada antrą mikrovaldiklį bet kurioje pasaulio vietoje, su žmogaus įsikišimu arba be jo. Kaip kitaip „Matricos“mašinos kada nors turėtų perimti valdžią, jei jos negali susikalbėti?

1 žingsnis: Surinkite dalis

Surinkite dalis
Surinkite dalis

Daugelis dalių yra tos pačios, kaip ir kompiuterio valdymo instrukcijoje https://www.instructables.com/id/Control-real-world-devices-with-your-PC/, ir siūloma, kad tai būtų atlikta prieš bandant susieti du mikrovaldiklius. Nors visiškai įmanoma naudoti puodą servo valdymui, šį kartą ketiname ieškoti ko nors paprastesnio - jungiklio, įjungiančio šviesos diodą. Jungiklis gali lengvai būti bako lygio jutiklis, o šviesos diodas gali būti siurblys žemyn prie upės, bet pirmiausia paimkime ką nors paprasto. Dalys - dvi „Picaxe 08M“mikroschemos - prieinamos iš daugelio šaltinių, įskaitant „Rev Ed“https://www.rev- ed.co.uk/picaxe/ (JK), PH Anderson https://www.phanderson.com/ (JAV) ir „Microzed“https://www.microzed.com.au/ (Australija). Šie lustai kainuoja mažiau nei 4 USD. Du iš: „Protoboard“, 9 V baterija ir akumuliatoriaus spaustukai, 10 k rezistorius, 22 k rezistorius, 33uF 16V kondensatorius, 0,1uF kondensatorius, 7805L mažos galios 5V reguliatorius, laidai (vientisas telefono/duomenų laidas, pvz., Cat5/6), LED, 1k rezistorius. 1 iš: D9 kištukinis lizdas ir dangtelis ir 2 metrai 3 (arba 4) pagrindinių duomenų laidų (atsisiųsti) ir perjungimo jungiklis. 2 kompiuteriai su 9 kontaktų nuosekliais prievadais (galima derinti viename kompiuteryje) ir interneto ryšys. Kompiuteriams, neturintiems nuoseklaus prievado, USB į nuoseklųjį įrenginį https://www.rev-ed.co.uk/docs/axe027.pdf ir nedidelį stereo lizdą.

2 veiksmas: atsisiųskite ir įdiekite tam tikrą programinę įrangą

Atsisiųskite ir įdiekite tam tikrą programinę įrangą
Atsisiųskite ir įdiekite tam tikrą programinę įrangą

Mums reikės nemokamos „VB. Net“ir „picaxe“valdiklio programinės įrangos, o jei atlikote kompiuterio valdiklį „Instructable“, tai jau turėsite. „VB. Net“(„Visual Basic Express“) galima rasti adresu https://msdn2.microsoft.com/en -us/express/aa718406.aspx „Picaxe“programinę įrangą galima rasti adresu https://www.rev-ed.co.uk/picaxe/ Norėdami atsisiųsti, turėsite užsiregistruoti „Microsoft“-jei tai problema, naudokite suklastotą el. ar kažkas. Iš tikrųjų man buvo naudinga duoti savo tikrąjį el. Paštą, nes jie retkarčiais siunčia naujinius. Taip pat paminėsiu „picaxe“forumą https://www.picaxeforum.co.uk/, nes tai yra forumas, kuriame dirba mokytojai ir pedagogai. kur studentai paprastai gali gauti atsakymus į klausimus per kelias valandas. Forumas labai supranta net paprasčiausius klausimus, nes kai kurie mokiniai vis dar mokosi pradinėje mokykloje. Nebijokite prašyti pagalbos!

3 žingsnis: sukurkite atsisiuntimo grandinę

Sukurkite atsisiuntimo grandinę
Sukurkite atsisiuntimo grandinę

Ši atsisiuntimo grandinė naudoja pikapo mikroschemą, porą rezistorių, reguliatorių ir 9 V bateriją. Daugiau informacijos rasite piktogramos dokumentacijoje/žinyne, kuri pateikiama programos pagalbos meniu. Grandinė turėtų užtrukti tik kelias minutes, kai visos dalys bus po ranka. Užprogramavus mikroschemą, ji išsaugo savo programą EEPROM, net kai maitinimas yra išjungtas. Kadangi programuojame du lustus, gali būti verta pažymėti mikroschemas, kad žinotumėte, kuris yra kuris. Jūs visada galite grįžti atgal ir perprogramuoti mikroschemą pašalindami nuorodą ir perkeldami rezistorių.

Taip pat norėčiau pridurti, kad pikapai veikia laimingai naudojant 3 AA baterijas. 5 V reguliuojamas maitinimas yra naudingas veikiant analoginiams įėjimams, nes atskaitos įtampa nesikeičia, tačiau paprastoms įjungimo/išjungimo grandinėms reguliuojamas maitinimas nereikalingas. Tokiose situacijose 5V reg.

4 žingsnis: užprogramuokite lustus

Užprogramuokite traškučius
Užprogramuokite traškučius

Vieną programą vadinsime Tx ir Rx. „Tx“yra kontrolinis lustas ir turi jungiklį ir šviesos diodą. Rx taip pat turi LED. Kai jungiklis pakeičia signalą, jis pereina iš Tx į Rx, keičiasi šviesos diodas ir antrasis kintamasis, kuris vėliau grįžta į Tx. Taigi paspauskite jungiklį ir per mažiau nei minutę abiejose grandinėse pasikeis šviesos diodas, rodantis, kad pranešimas pateko ir Rx veikia naują jungiklio padėtį. Paprasčiausiu lygiu „picaxe“turi 14 vieno baito registrų. Kai sukuriamas virtualus tinklas, mes susiejame visus tuos registrus, taigi, jei baitas pasikeičia vienoje piktogramoje, jis keičiasi visose pikapose. Aišku, jei dvi pikapos bando pakeisti tą patį baitą, tai bus labai painu, bet jei kiekviena piktaksė pakeis tik vieną baitą, visos kitos pikapos gali matyti tą pokytį ir veikti. Paprastus pranešimus galima perduoti pirmyn ir atgal, jei tam tikrą baitą pakeičia tik viena piktograma. Puodas gali pakeisti registro vertę, o viena ar kelios kitos pikapos gali jausti, kad pasikeičia ir perkelia servo ar bet ką, ir įjungti šildytuvą. Antrasis registras gali grąžinti kambario temperatūrą. Nukopijuokite ir įklijuokite programas iš eilės į „picaxe“programuotoją ir atsisiųskite jas į kiekvieną atitinkamą mikroschemą naudodami mėlyną atsisiuntimo rodyklę iš „picaxe“programuotojo. Tx: pagrindinis: serinas 3, N2400, („duomenys“), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'gauti paketą iš kompiuterio, jei pin2 = 0 tada 'išbandykite jungiklį ir nustatykite registrą b0, priklausomai nuo būsenos b0 = 0 kitas b0 = 1 endif, jei b1 = 0, tada' kiti pikapų rinkiniai b1, priklausomai nuo b0 žemo 1 ', išvedė kitaip aukštai 1', nukreipti į 0 endif serout, N2400, ("Duomenys", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) 'siųsti atgal į kompiuterį goto mainand Rx: main: serin 3, N2400, („Duomenys“), b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 'gauti paketą iš kompiuterio b1 = b0' pakeisti registrą b1 į lygų registrą b0, jei b1 = 0, tada žemas 1 'nuėjo, o kitas aukštas 1' - ant endif serijos 0, N2400, ("duomenys", b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13) „siųsti atgal į kompiuterį„ goto main “

5 žingsnis: sukurkite Tx grandinę

Sukurkite Tx grandinę
Sukurkite Tx grandinę

Jei judate pirmyn ir atgal tarp darbo grandinės ir programavimo grandinės, būtinai pakeiskite jungtį prie 2 kojos ir 22k rezistoriaus vietą iš 2 kojos į 4 koją. Arba galite sukurti specialią atsisiuntimo grandinę ir perkelti lustus skersai. Tiesiog atkreipkite dėmesį, ar grandinė veikia, ar atsisiunčiama, nes tai gali būti gana painu. Ypač atkreipkite dėmesį, kad bėgimo grandinė neveiks, jei 2 koja bus palikta plaukti - ją reikia įžeminti. 2 koja yra atsisiuntimo kaištis ir, jei ji lieka plūduriuojanti, ji surenka paklydusį RF iš flouro žibintų ir lustas mano, kad atsisiunčiama kita programa.

Taip pat verta paminėti pikantišką nomenklatūrą, kuri fizinį smeigtuką vadina koja, o virtualų kaištį - smeigtuku. Taigi kodo 2 kaiščio išvestis iš tikrųjų yra 5 fizinės kojos išvestis. Tai gali atrodyti keista, tačiau tai reiškia, kad kodą galima perkelti į didesnes pikapas, pvz., 28 ir 40 kontaktų versijas, ir jos vis tiek veikia.

6 žingsnis: sukurkite Rx grandinę

Sukurkite Rx grandinę
Sukurkite Rx grandinę

Ši grandinė yra beveik tokia pati kaip siųstuvas - ji tiesiog neturi jungiklio.

7 žingsnis: parašykite tam tikrą „VB. Net“kodą

Parašykite VB. Net kodą
Parašykite VB. Net kodą

Aš galėjau surinkti kodą ir padaryti šią programą prieinamą kaip sukompiliuotą.exe, bet išmokti kai kurių VB. Net yra toks neįtikėtinai naudingas, kad verta jį pereiti žingsnis po žingsnio. Jei naudojate tai dviejuose skirtinguose kompiuteriuose, galite sukurti programą į.exe, kuri sukuria nedidelę sąrankos programą, kurią galima įdiegti antrame kompiuteryje. Arba galite įdėti „VB. Net“į abu kompiuterius ir paleisti programas iš „VB“. Tarkime, kad žinote, kaip atidaryti naują „VB.net“projektą nuo https://www.instructables.com/id/S1MMU2XF82EU2GT 7 ir 8 žingsnių /Į tuščią formą pridėsime šiuos komponentus iš įrankių juostos ir įdėsime juos į formą tose vietose, kaip parodyta. Etikečių ir teksto laukelių teksto ypatybes (apatinėje dešinėje) pakeiskite reikiamomis. Nesijaudinkite dėl laikmačio nustatymų - mes juos pakeisime į kodą, tačiau būtinai įdėkite laikmatį. Galite perkelti daiktus ir nėra tikrų taisyklių dėl vietos. Didelis teksto laukelis yra „RichTextBox“, o mažesni trys yra įprasti teksto laukeliai. Kalbant apie tvarką, pradedame nuo formos viršaus ir judame žemyn. Jei ką nors paliksite, kode bus klaida, kuri turėtų duoti tam tikrą užuominą. Pasirinkite atsitiktinį „Textbox3“failo pavadinimą - tai yra jūsų unikalios piktaksų grupės pavadinimas ftp serveryje ir, žinoma, jei mes visi naudojame tas pats pavadinimas, tada duomenys bus sumaišyti! Atsiprašome už šios lentelės brūkšnius-įvedus tarpus, prarandamas lentelės formatavimas. Įrankių dėžutės objektas ------- Tekstas ----------- ------------------------------ PastabosLabel1 ------------------ Picaxe CommunicationsLabel2 ------------------ FTP StatusLabel3 ------------------ StatusLabel4 ---------- -------- Picaxe RegistersLabel5 ------------------ Registruotis 0-13Label6 ------------------ Reikšmė 0-255 Etiketė 7 ------------------ FTP nuorodos failo pavadinimas Tekstų dėžutė1 ---------------- 0 -------- -------------------------------------- 0 yra nulis, o ne OTextbox2 ----- ----------- 0Textbox3 ---------------- Mano failo pavadinimas --------------------- ---------- Keisti, kad nebūtų susidūrimų! Mygtukas1 ------------------ KeistiRichtextbox1 Picturebox1 Picturebox2 Laikmatis1

8 veiksmas: pridėkite kodą

Pridėkite tam tikrą kodą
Pridėkite tam tikrą kodą

Žr. Kitos instrukcijos 12 veiksmą, kad sužinotumėte, kur yra mygtukas, kuris perjungiamas tarp formos ir kodo rodinio. Perjunkite į kodo rodinį ir įklijuokite šį kodą. Visos spalvos turėtų vėl pasirodyti, kaip parodyta ekrano kopijoje. Jei eilutė netinkamai nukopijuota dėl žodžių įvyniojimo problemos, ištrinkite tarpus, kol išnyks klaidos pranešimas. Aš bandžiau komentuoti daugumą eilučių, kad kodas bent jau turėtų prasmę. Prieš įklijuodami ištrinkite viešosios klasės bitą, kad tekstas būtų tuščias - šis kodas jau turi viešą klasę. Jei objektas, pvz., Teksto laukelis, nebuvo patalpintas formoje arba turi neteisingą pavadinimą, jis bus pateiktas teksto kode, po juo bus mėlyna linija. Importo sistema. IOImports eilutės = „Microsoft. VisualBasic“, todėl gali naudoti tokie dalykai, kaip kairė (ir dešinė (eilutėmsPublic Class Form1 Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Integer)) užmigimo teiginiams Dim WithEvents serialPort As New IO. Ports. SerialPort nuoseklusis prievadas deklaruoja Dim PicaxeRegisters (nuo 0 iki 13) Kaip baitas registruoja nuo b0 iki b13 Dim ModifyFlag As Boolean Private Sub Form1_Load („ByVal“siuntėjas kaip objektas, „ByVal“ir „System. EventArgs“) tvarko mane. Pakrauti reikia viso šito šiukšlių -.net įdeda jį automatiškai, kai eina form1events aukščiau/įkelia Timer1. Enabled = True 'įveskite šį kodą kaip numatytąjį į klaidingą, kai jis buvo sukurtas. jei reikšmę pakeisite rankiniu būdu, tada s kip parsisiųsti RichTextBox1. Multiline = Tiesa ', todėl gali būti rodoma daugiau nei viena eilutė Skambinti DisplayPicaxeRegisters ()' rodyti 14 registrų Skambinti ReadFTPFilename () 'nuskaityti failo pavadinimą iš disko (išsaugoma kas 20 sekundžių) Pabaiga Sub SerialTxRx () Dim DataPacket (Nuo 0 iki 17) Visas baitų duomenų paketas „Duomenys“+14 baitų Dim i Kaip sveikasis skaičius „i“visada naudingas kilpoms ir pan., 1)) 'pridėkite žodį "Duomenys" prie paketo Kitas Dėl i = 0 Iki 13 DataPacket (i + 4) = PicaxeRegisters (i)' pridėkite visus baitus prie paketo Kitas Jei serialPort. IsOpen Tada serialPort. Close () 'tik tuo atveju, jei jau atidarytas pabaiga Jei bandysite naudodami serialPort. PortName = "COM1"' Dauguma naujų kompiuterių pagal numatytuosius nustatymus yra com1, bet bet kuris kompiuteris iki 1999 m. su serijine pele tikriausiai bus numatytasis com2. BaudRate = 2400 ' maži pikapai. Parity = IO. Ports. Parity. None 'nėra pariteto. DataBits = 8' 8 bitai. StopBits = IO. Ports. StopBits. One 'vieno langelio. ReadTimeout = 1000' milisekon ds laikas baigiasi per 1 sekundę, jei nėra atsakymo. Atidarykite () 'atidarykite nuoseklųjį prievadą. mažiausiai laukti duomenų sugrįžimo ir daugiau, jei duomenų srautas ilgesnis. Skaitykite („DataPacket“, 0, 18) „perskaitykite duomenų paketų masyvą. Uždarykite ()“uždarykite nuoseklųjį prievadą (i - 4) = DataPacket (i) 'perkelkite naują duomenų paketą į registro masyvą Next PictureBox1. BackColor = Color. GreenGellow („ByVal“failo pavadinimas kaip eilutė) „Dim localFile As String“vieta duomenims saugoti „Dim remoteFile As String“failo pavadinime skiriamos didžiosios ir mažosios raidės, tai tikrai svarbu Const host As String = "ftp://ftp.0catch.com" 'pastaba 0 yra nulis nėra simbolis O Const vartotojo vardas As String = "picaxe.0catch.com" Const slaptažodis As String = "picaxetester" Dim URI kaip Styga localFile = Failo pavadinimas 'galbūt nereikalingas, bet jei apibrėžsite vietą, pvz., C: / mano katalogas gali lengvai pridėti šį būdą. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = New System. Net. NetworkCredential (naudotojo vardas, slaptažodis) "prisijungti ftp. KeepAlive = False" bus atjungus vieną kartą, ftp. UseBinary = True "naudokite dvejetainius pranešimus ftp. Timeout = 9000 'timeout po 9 sekundžių - labai naudinga, nes ftp kartais miršta (ir laikrodžio dažnis 20 sek.) gali tekti būti lėtesniam, kai telefoninis ryšys yra ftp. Metodas = System. Net. WebRequestMethods. Ftp. UploadFile 'pradeda siųsti failą Dim fs As New FileStream (localFile, FileMode. Open)' atidaryti vietinį failą Dim filecontents (fs. Length) As Byte 'perskaityti į atmintį fs. Read (filecontents, 0, fs. Length) fs. Close () 'uždaryti failą Dim requestStream As Stream = ftp. GetRequestStream ()' start ftp link requestSt ream. Write (filecontents, 0, filecontents. Length) 'siųskite jai užklausąStream. Close ()' uždarykite nuorodą PictureBox2. BackColor = Color. GreenYellow 'pakeiskite langelį į žalią ir pasakykite, kad viskas gerai Label2. Text = "FTP Connected" " tekstas, kuriame sakoma, kad jis prijungtas Catch 'negali prijungti PictureBox2. BackColor = Color. Red' langelio į raudoną, nes jo nėra 'atsisiunčia nuotolinį failą į localfile Dim DimFF As As String' vieta duomenims saugoti Dim remoteFile As String 'failo pavadinimas skiria didžiąsias ir mažąsias raides, tai tikrai svarbu Const host As String = "ftp://ftp.0catch.com" Const vartotojo vardas As String = "picaxe.0catch.com "Konstravimo slaptažodis kaip eilutė =" picaxetester "Dim URI kaip eilutė" localFile = "C: \" + Failo vardas "saugo šakniniame kataloge, bet gali pakeisti šį localFile = Filename ', todėl gali pridėti c: / jei reikia apibrėžti tikroji vieta remoteFile = "/" + Failo pavadinimas 'pridėtas prie nuotolinės ftp vietos URI = host + remoteFile' make up visas adresas Pabandykite Dim ftp kaip System. Net. FtpWebRequest = CType (System. Net. FtpWebRequest. Create (URI), System. Net. FtpWebRequest) ftp. Credentials = New System. Net. NetworkCredential (vartotojo vardas, slaptažodis) 'prisijungimas ftp. KeepAlive = False 'bus atjungtas baigus ftp. UseBinary = True' dvejetainis režimas ftp. Timeout = 9000 'skirtasis laikas po 9 sekundžių ftp. Method = System. Net. WebRequestMethods. Ftp. DownloadFile' atsisiųskite failą 'skaityti dalimis kaip nežinau, kokio dydžio yra failas IO. FileMode. Create) Dim buferis (2047) Kaip baitas Dim skaitymas kaip sveikasis skaičius = 0 Do read = responseStream. Read (buferis, 0, buferis. Length) 'gabalas iš ftp fs. Write (buferis, 0, skaityti)' ir rašyti į failą Loop Iki skaitymo = 0 ', kol nebeliks gabalų atsakymoStream. Close ()' uždarykite ftp failą fs. Flush () 'flush clear fs. Close ()' ir uždarykite e failas Pabaigos naudojimas responseStream. Close () 'uždarykite jį, net jei nieko ten nebuvo. dirbo Pabaigoje naudojant sugavimą 'čia įveskite klaidos kodus PictureBox2. BackColor = Color. Red' raudona dėžutė, nes ji neveikia Kaip System. Object, ByVal ir kaip System. EventArgs) tvarko laikmatį1. Tick If ModifyFlag = False Tada 'jei vartotojas pakeitė baitą, neatsisiųskite Label3. Text = "Atsisiunčiama" System. Windows. Forms. Application. DoEvents () "taigi naujas etiketės tekstas rodo Skambinti FTPDownload (TextBox3. Text)" atsisiųsti nuotolinį failą Label3. Text = "Atsisiųsta" System. Windows. Forms. Application. DoEvents () Skambinti ReadRemoteFileToRegisters () 'išsaugoti failų numerius registro masyve Label3. Text = "Kalbėjimas su pikse" System. Windows. Forms. Application. DoEvents () Else ModifyFlag = False 'iš naujo nustatyti vėliavą Baigti, jei skambutis SerialTxRx () 'siųskite į pikapą ir perskaitykite jį atgal Label3. Text = "Įkeliama" System. Windows. Forms. Application. DoEvents () Skambinti FTPUpload (TextBox3. Text) 'siųsti atgal į ftp svetainę, pavadintą mano vardu Label3. Text = "Poilsis" Skambinti SaveFTPFilename ()' taip skaitoma įjungus, kai iš naujo paleidžiamas Pabaigos antrinis ekranas DisplayPicaxeRegisters () Dim i Kaip sveikasis skaičius Registro numeris kaip eilutė RichTextBox1. Multiline = True ", todėl teksto lauke RichTextBox1. Clear ()" gali būti rodoma daugiau nei viena eilutė. i = 0 iki 13 registernumber = Trim (Str (i)) 'apdaila iš priekinių tarpų Jei i <10 Tada registernumber = "0" + registernumber' pridėkite 0 prie skaičių iki 10 End If RichTextBox1. AppendText (registernumber + "=" + Str (PicaxeRegisters (i))) + Chr (13)) Kitas 'chr (13) yra vežimo grąžinimas, todėl nauja eilutė Baigti subprivatų antrinį mygtuką1_Click (ByVal siuntėjas) Kaip System. Object, ByVal e kaip System. EventArgs) rankenėlių mygtukas i = Val (TextBox2. Text) Jei i <0 arba i> 255, tada TextBox2. Text = 0 Pabaiga Jei PicaxeRegisters (Val (TextBox1. Text)) = Val (TextBox2. Text) 'pakeiskite reikšmę Call DisplayPicaxeRegisters ()' ir atnaujinti ekraną „ModifyFlag = True“, o kita ftp nuoroda praleisti atsisiuntimo pabaigą Sub Sub Sub SaveRegistersToLocalFile () “išsaugoti registro masyvą vietiniame teksto faile Dim i As Integer FileOpen (1, TextBox3. Text, OpenMode. Output)“atidarykite teksto failą pavadinimu teksto laukelyje Jei i = 0 iki 13 „PrintLine“(1, Str („PicaxeRegisters“(i))) „išsaugokite 14 reikšmių Kitas failas Uždaryti (1)“uždarykite failą Pabaigos antrinis skyrius ReadRemoteFileToRegisters () “nuskaito vietinį teksto failą į registro masyvą Dim i As Integer Dim LineOfText kaip eilutė Pabandykite „FileOpen“(1, TextBox3. Text, OpenMode. Input) “skaitykite nuotolinio failo pavadinimą. es PicaxeRegisters (i) = Val (LineOfText) "konvertuoti tekstą į vertes Kitas FileClose (1) Sugauti ex kaip išimtį FileClose (1)" failas neegzistuoja, todėl nieko nedarykite Pabaiga Pabandykite Pabaiga Sub ReadFTPFilename (), taigi pavadinimas nuotolinis ftp failas bus toks pat kitą kartą paleidus šią programą pavadinimas „FileClose“(1) „Catch ex“kaip išimtis „FileClose“(1) Pabaiga Pabaiga Pabaigas Sub Išsaugoti FTPFilename () „FileOpen“(1, „FTPFilename.txt“, OpenMode. Output) “išsaugokite nuotolinio ftp failo pavadinimą PrintLine (1, TextBox3. Text) „FileClose“(1) Baigti antrąją klasę

9 veiksmas: paleiskite programą abiejuose kompiuteriuose

Paleiskite programą abiejuose kompiuteriuose
Paleiskite programą abiejuose kompiuteriuose

Pradėkite paleisti programą spustelėdami žalią trikampį ekrano viršuje - mygtuką „Pradėti derinimą“. 20 sekundžių nieko neįvyks, o tada programa bandys prisijungti prie „ftp“serverio ir bandys prisijungti prie „picaxe“. Nuotraukų dėžės bus raudonos arba žalios. „Ftp“vieta yra nemokama svetainė ir ją gali naudoti bet kas, bet jums reikia naudoti kitą „ftp“failo pavadinimą (mano yra „DoctorAcula1“), kitaip mes visi galėtume gauti vienas kito duomenis, jei naudosime tą patį failo pavadinimą! Jei jums patinka, galiausiai galite gauti savo ftp svetainę - tiesiog pakeiskite ftp vietą, vartotojo vardą ir slaptažodį dviejose kodo vietose iš mano „0Catch“svetainės. Dauguma svetainių leidžia ftp. Keli kompiuteriai gali pasiekti tą patį ftp failą - ftp failų serveris surūšiuoja, kokia tvarka jie vyksta. Kartais kyla duomenų susidūrimų ar užstringa ir atrodo, kad tai atsitinka kas 20 nuskaitytų failų. Jei taip atsitinka, kode yra skirtasis laikas, todėl jis negrąžina jokių duomenų, o ne sugadintų duomenų. Naudojant plačiajuostį ryšį, kurio įkėlimo greitis yra 128 kb, reiškia, kad failo įkėlimas užtrunka apie 3 sekundes, bet kartais iki 8 sekundžių, dauguma jų užimama rankos paspaudimu, o ne duomenų perdavimu. Taip nustatomas mažiausiai 20 sekundžių „timer1“laikas, atsižvelgiant į atsisiuntimą, įkėlimą ir pokalbį su „picaxe“. Naudodami labai greitą plačiajuostį ryšį, galite sutrumpinti ciklo laiką. VB programoje galite rankiniu būdu pakeisti registrą. Jei tai padarysite, kitas laikmačio ciklas praleidžia atsisiuntimą iš ftp svetainės ir siunčia naujus duomenis į pikapą, tada perskaito ir įkelia. Taigi nauji duomenys patenka į visas su šia grupe susietas pikapas. Tai naudinga derinant ir (arba) susiejant kompiuterio programinę įrangą su mikrovaldiklio aparatūros kilpa. Svetainės taip pat gali pasiekti aparatūros kilpą naudodami PERL scenarijų ar panašų, kad į ftp svetainę įrašytų naują failą. Ši ekrano kopija buvo padaryta naudojant „Tx“lustą, jungiklis buvo įjungtas, o registras b0 = iki 1 buvo išsiųstas į „Rx“mikroschemą, kuri tada taip pat pakeitė registrą b1 į 1. Šviesos diodas buvo apšviestas abiejose lentose. Tai nereikšminga programa, tačiau nesunku įjungti 3,6 kW siurblį, o ne lemputę. Dar keletas idėjų yra adresu https://drvernacula.topcities.com/, įskaitant pikapų susiejimą naudojant saulės energija varomas radijo nuorodas. Naudodamiesi radijo ryšiais ir internetu, „mašinos“gali pasiekti daugelį pasaulio kampelių. „Picaxe“forume yra keletas idėjų, kaip išplėsti šią idėją ir pakeisti kompiuterį bei „ftp“svetainę specialiais žiniatinklio serverio lustais, kurie prijungiami tiesiai prie maršrutizatoriaus. Akivaizdu, kad tai sumažintų nuorodos energijos suvartojimą. Jei jus domina tolesnės diskusijos, rašykite „Intstructable“komentaruose ir (arba) „picaxe“forume. Dr. James MoxhamAdelaidė, Pietų Australija

10 veiksmas: kodo ekrano nuotraukos

Kodo ekrano kopijos
Kodo ekrano kopijos

Pagal pageidavimą čia pateikiamos „vb.net“kodo ekrano kopijos su visais formatavimais. Šis kodas iš tikrųjų buvo nukopijuotas iš šios instrukcijos ir formatavimas vėl pasirodė automatiškai. Būtų geriau nukopijuoti ir įklijuoti tekstą, nei bandyti skaityti šias nuotraukas, tačiau jos bus naudingos, jei esate interneto kavinėje ir negalite įdiegti „vb.net“.

11 veiksmas: ekrano kopija2

2 ekrano kopija
2 ekrano kopija

2 ekrano kopija

12 veiksmas: 3 ekrano kopija

3 ekrano kopija
3 ekrano kopija

3 ekrano kopija

13 veiksmas: ekrano kopija 4

4 ekrano kopija
4 ekrano kopija

4 ekrano kopija

14 veiksmas: ekrano kopija 5

Ekrano kopija 5
Ekrano kopija 5

Ekrano kopija 5

15 veiksmas: ekrano kopija 6

Ekrano kopija 6
Ekrano kopija 6

Ekrano kopija 6

Rekomenduojamas: