Når det gjelder å utforske potensialet til din oppfinnsomme fantasi, er Raspberry Pi et flott tillegg til ditt kreative verktøysett. Vurder å flytte dine kreative grenser med prosjekter som å bygge et arkadeskap, fotografering av romutforskning eller gi liv til eldre teknologi.
En nyutdannet ble inspirert til å takle et unikt prosjekt ved å bruke en elektronisk skrivemaskin som en Linux-terminalskjerm, ved hjelp av en Raspberry Pi-datamaskin. La oss ta en titt på hvorfor han bestemte seg for å ta på seg dette prosjektet, sammen med verktøyene og teknikkene som ble brukt for å hjelpe ham på veien.
Å lære av andre
Etter å ha nylig tatt en grad i maskinteknikk, er Riley ikke fremmed for elektronikk. Han foretrekker å jobbe med prosjekter der han designer løsninger rundt bevegelige deler. Å parre drømmen hans om å lage sitt eget mekaniske tastatur med kjærligheten til bevegelige deler gjør dette prosjektet perfekt for ham.
Ideen er i utgangspunktet kreditert til en venn på videregående. Sammen jobbet de for å bygge en datamaskin med en Z80 CPU og planla å bygge en eldre skrivemaskin, en Smith Corona PWP D350, til bruk som tastatur og etui. Dessverre har tastaturdelene nå samlet støv i seks år.
En YouTube-innholdsskaper, CuriousMarc, brukte en Teletype-maskin som en Linux-terminal, noe som gjenopplivet Rileys ambisjon om å prøve igjen.
Dette prosjektet er en fin måte for deg å forstå hvordan bevegelige deler fungerer og hvordan teknologi kommuniserer sammen.
Prosjektkomponenter
Her er det du trenger for å gjenskape dette prosjektet hjemme:
- Brother AX-25 (eller lignende skrivemaskin)
- Multipleksere
- Brødbrett
- Raspberry Pi (kjører Raspberry Pi OS Lite)
- USB-tastatur
- Arduino One
- Kode: Arduino programmeringsspråk
- Spenningsdelere
- Diverse kabler og kontakter
Forskning og forberedelse
En stor hindring var å forstå hvordan skrivemaskinen tolket eksterne tastetrykk. Dette ble løst ved å manuelt identifisere hver pinne koblet til skrivemaskinkabelen og deretter lage et regneark for å holde det hele rett. Hver tast er tildelt et nummer mellom 0 og 87 for å gjøre programmeringen enklere.
Multiplekserne brukes til å koble til innganger og utganger uten å trenge mye ekstra kabling eller tilkobling. Du kan for eksempel redusere antall pinner som brukes når du arbeider med mange sensorer eller motorer.
Når det gjelder skrivemaskinen, brukes multipleksere til å koble mange inngangspinner til en enkelt utgangspinne. Når du endrer de valgte pinnene kan du deretter velge hvilken inngang som skal kobles til utgangen.
For å sikre nøyaktighet mellom komponentene, var det nødvendig med kabling av en 8 x 11 matrise for å forstå hvordan man kartlegger skrivemaskinsporene riktig. Du kan se denne manuelle oppdagelsen finne sted på Rileys YouTube-kanal som er koblet til på slutten av denne veiledningen.
Koble til komponenter
Basert på Rileys forskning fungerer skrivemaskinmekanismen for tusenfryd hjul godt med Arduino. For å lære mer om denne mikrokontrolleren, sjekk ut vår guide på utforske de forskjellige Arduino-typene for detaljer. Hvorfor endte han opp med å bruke en Brother AX-25? Dette er bare den første skrivemaskinen han fant for å passe kriteriene hans.
På bildet over kobler et langt rektangelbrett sammen ulike teknologier. Dette kalles et brødbrett. Hovedformålet med dette kortet er å forenkle elektroniske kretser. Sjekk ut vår guide på hvordan et brødbrett fungerer for detaljer.
Med et USB-tastatur koblet til Raspberry Pi kan du deretter sende kommandoer til skrivemaskinen via Arduino-mikrokontrolleren. For å få en dypere forståelse av terminalfunksjoner, se vår guide på historien til Linux-kommandoer.
Raspberry Pi kjører Raspberry Pi Lite OS som tilfredsstiller behovene til dette prosjektet godt. Dette skyldes at skrivemaskinen viser enkle funksjoner gjennom TTY-terminalen (eller teletype).
Riley innrømmer at Arduino kan fjernes fra denne ligningen. Å feilsøke eventuelle problemer mens multipleksere overfører Raspberry Pi-kommandoer til skrivemaskinen er mer effektivt fordi han har omfattende kunnskap om denne mikrokontrolleren. Alternativt er det nødvendig å lage en ny Linux-driver for å erstatte Arduino. Dette er ikke noe i denne skaperens planer for nå.
Han vurderte også å fjerne Raspberry Pi og legge til en seriell portforbindelse mellom Arduinoen og skrivemaskinen. Selv om han var glad for å fortelle at dette ville bety at skrivemaskinen ville føles som en ekte teletypemaskin, har han valgt å beholde den generelle flyten av komponenter inntil videre.
Han valgte å kode ved å bruke Arduino-programmeringsspråket på grunn av hans erfaring med å bruke Arduino til et seniordesignprosjekt på skolen. Denne opplevelsen kom til nytte noen ganger, spesielt når det var et lite problem når du forsøkte å fortelle skrivemaskinen om å trykke på to grønne (funksjons) taster samtidig.
Tidsproblemet ble til slutt løst ved å be Arduinoen trykke to taster veldig nær hverandre. Dette lurte faktisk skrivemaskinen til å tro at to taster ble trykket sammen og muliggjorde bruken av de grønne (funksjons)tastene tross alt.
Med hensyn til kraftforskjellsbetraktninger mellom Arduino og Raspberry Pi, spenningsdelere brukt i dette prosjektet reduserer 5V-effekten til Arduino til 3,3V-effekten til Pi Zero W.
Hva bringer fremtiden?
Nylig delte Riley en direktesending på YouTube-kanalen sin og utformet en PCB i sanntid. Ikke sikker på hva en PCB er? Sjekk ut vår guide på trykte kretskort. Hvis du ikke er interessert i å se gjennom seks timer med direktesendingsinnhold (beskriver designet i detalj), bør du vurdere å hoppe gjennom videoen til en del som passer deg.
Når skjemaet er fullført planlegger han å sende PCB-designet til en produsent. Når PCB er ferdigstilt og mottatt hjemme, delte Riley at han er spent på å ta det ferdige produktet for en test i den virkelige verden en dag snart.
Vil du prøve dette prosjektet selv?
Ettersom du nå forstår hvilke komponenter som kreves, og hvordan det henger sammen, kan du også se gjennom koden online. Du er velkommen til å se Rileys åpen kildekode seriell-skrivemaskin GitHub-lager. Mens du er der, kan du lese gjennom den gode forklaringen i README-filen som skisserer et kretsskjema for å hjelpe deg å koble alle komponentene sammen.
Hvis du finner at du trenger en hjelpende hånd, ta kontakt med Riley's YouTube-kanal, Artillect, for detaljer. Du vil også finne at han inkluderer andre måter å få kontakt med ham på.
Nyt å gi din elektroniske skrivemaskin nytt liv som en Linux-terminal!