Kui on vaja uurida oma leidliku kujutlusvõime potentsiaali, on Raspberry Pi suurepärane täiendus teie loomingulisele tööriistakomplektile. Kaaluge oma loominguliste piiride nihutamist selliste projektidega nagu arkaadkapi ehitamine, kosmoseuuringute fotograafia või vanemasse tehnoloogiasse elu andmine.

Värskelt koolilõpetaja sai inspiratsiooni unikaalse projektiga tegelemiseks, kasutades Linuxi terminaliekraanina elektroonilist kirjutusmasinat, kasutades Raspberry Pi arvutit. Vaatame, miks ta otsustas selle projekti ette võtta, koos tööriistade ja tehnikatega, mida ta sellel teel abistas.

Teistelt õppimine

Hiljuti mehaanikainseneri kraadi omandanud Rileyle pole elektroonika võõras. Ta eelistab töötada projektidega, kus ta kavandab lahendusi liikuvate osade ümber. Seoses oma unistuse luua oma mehaaniline klaviatuur armastusega liikuvate osade vastu muudab selle projekti tema jaoks ideaalseks.

Idee autoriks on esialgu keskkoolisõber. Üheskoos töötasid nad Z80 protsessorit kasutava arvuti loomise nimel ja plaanisid klaviatuuri ja korpusena kasutada vanemat kirjutusmasinat Smith Corona PWP D350. Kahjuks on klaviatuuriosad nüüdseks juba kuus aastat tolmu kogunud.

YouTube'i sisulooja CuriousMarc kasutas Linuxi terminalina Teletype masinat, mis taastas Riley ambitsiooni uuesti proovida.

See projekt on suurepärane võimalus mõista, kuidas liikuvad osad töötavad ja kuidas tehnoloogia omavahel suhtleb.

Projekti komponendid

Selle projekti kodus taasloomiseks vajate järgmist:

  • Brother AX-25 (või sarnane kirjutusmasin)
  • Multiplekserid
  • Leivalaud
  • Raspberry Pi (töötab Raspberry Pi OS Lite'i)
  • USB-klaviatuur
  • Arduino One
  • Kood: Arduino programmeerimiskeel
  • Pingejaoturid
  • Erinevad kaablid ja pistikud

Uurimine ja ettevalmistamine

Suureks takistuseks oli mõista, kuidas kirjutusmasin väliseid klahvivajutusi tõlgendas. See lahendati käsitsi iga kirjutusmasina kaabliga ühendatud tihvti tuvastamisega ja seejärel arvutustabeli loomisega, et see kõik oleks sirge. Programmeerimise hõlbustamiseks on igale klahvile määratud number vahemikus 0 kuni 87.

Multipleksereid kasutatakse sisendite ja väljundite ühendamiseks, ilma et oleks vaja palju lisakaabeldust või ühenduvust. Näiteks saate paljude andurite või mootoritega töötamisel vähendada kasutatavate kontaktide arvu.

Kirjutusmasina puhul kasutatakse multipleksereid paljude sisendviikude ühendamiseks ühe väljundviiguga. Valitud kontaktide muutmisel saate seejärel valida, milline sisend on väljundiga ühendatud.

Komponentidevahelise täpsuse tagamiseks oli vaja ühendada 8 x 11 maatriks, et mõista, kuidas kirjutusmasina jälgi õigesti kaardistada. Näete seda käsitsi avastamist Riley YouTube'i kanalil, mille link on selle juhendi lõpus.

Komponentide ühendamine

Riley uurimistöö põhjal töötab kirjutusmasina mehhanism Arduinoga hästi. Selle mikrokontrolleri kohta lisateabe saamiseks vaadake meie juhendit erinevate Arduino tüüpide uurimine üksikasjade saamiseks. Miks ta lõpuks kasutas Brother AX-25? See on esimene kirjutusmasin, mille ta leidis, et see vastab tema kriteeriumidele.

Ülaltoodud pildil ühendab pikk ristkülikukujuline tahvel erinevaid tehnoloogiaid. Seda nimetatakse leivalauaks. Selle plaadi peamine eesmärk on lihtsustada elektroonilisi vooluringe. Tutvuge meie juhendiga kuidas leivalaud töötab üksikasjade saamiseks.

Raspberry Pi-ga ühendatud USB-klaviatuuriga saate seejärel Arduino mikrokontrolleri kaudu kirjutusmasinasse käske saata. Terminali funktsioonide paremaks mõistmiseks lugege meie juhendit Linuxi käskude ajalugu.

Raspberry Pi töötab Raspberry Pi Lite OS-iga, mis vastab selle projekti vajadustele hästi. See on tingitud sellest, et kirjutusmasin kuvab lihtsaid funktsioone TTY (või teletüüpi) terminali kaudu.

Riley tunnistab, et Arduino võiks sellest võrrandist eemaldada. Probleemide tõrkeotsing ajal, mil multiplekserid edastavad Raspberry Pi käske kirjutusmasinale, on tõhusam, kuna tal on selle mikrokontrolleri kohta laialdased teadmised. Teise võimalusena on Arduino asendamiseks vaja luua uus Linuxi draiver. See pole praegu selle looja plaanides.

Samuti kaalus ta Raspberry Pi eemaldamist ja jadapordiühenduse lisamist Arduino ja kirjutusmasina vahele. Kuigi tal oli hea meel jagada, et see tähendaks, et kirjutusmasin tunneks end tõelise teletaipi masinana, on ta otsustanud esialgu säilitada üldise komponentide voo.

Valides kodeerida Arduino programmeerimiskeelega, kuna ta kasutas Arduinot koolis vanemate disainiprojektide jaoks. See kogemus tuli mõnel korral kasuks, eriti kui tekkis väike probleem, kui üritati käskida kirjutusmasinal vajutada korraga kahte rohelist (funktsiooni) klahvi.

Ajastusprobleem lahendati lõpuks sellega, et kästi Arduinol vajutada kahte klahvi väga lähedale. See pani kirjutusmasina tegelikult mõtlema, et kaks klahvi olid kokku vajutatud ja võimaldas lõpuks kasutada rohelisi (funktsiooni) klahve.

Arduino ja Raspberry Pi pingejaoturite võimsuse erinevuse kaalutluste osas selles projektis kasutatud vähendage Arduino 5 V väljundvõimsust Pi Zero 3,3 V väljundvõimsuseni W.

Mida tulevik toob?

Hiljuti jagas Riley oma YouTube'i kanalil reaalajas PCB-d kujundades otseülekannet. Kas pole kindel, mis on PCB? Tutvuge meie juhendiga trükkplaadid. Kui te ei ole huvitatud kuuetunnisest otseülekande sisust (kirjeldades üksikasjalikult kujundust), kaaluge video vahelejätmist teile sobivasse jaotisesse.

Kui skeemid on valmis, kavatseb ta saata PCB projekti tootjale. Kui PCB on valmis ja koju kätte saanud, jagas Riley, et on põnevil, et saab valmistoote varsti pärismaailmas testimiseks viia.

Kas proovite seda projekti ise?

Kuna saate nüüd aru, millised komponendid on vajalikud ja kuidas need kokku tulevad, saate koodi ka veebis üle vaadata. Olete oodatud tutvuma Riley avatud lähtekoodiga jadakirjutusmasina GitHubi hoidla. Kui olete seal, lugege läbi README-faili suurepärane selgitus, mis sisaldab vooluahela skeemi, mis aitab teil kõiki komponente omavahel ühendada.

Kui leiate, et vajate abikäsi, konsulteerige Riley'siga YouTube'i kanal, Artillect, üksikasju. Samuti leiate, et ta sisaldab ka muid viise temaga ühenduse loomiseks.

Nautige oma elektroonilisele kirjutusmasinale Linuxi terminalina uue elu andmist!