Elektroda.pl
Elektroda.pl
X
Arrow Multisolution Day
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Maszyna do pisania ze starej drukarki igłowej

piotrva 14 Maj 2010 19:54 14503 26
  • Maszyna do pisania ze starej drukarki igłowej
    Witam serdecznie!
    Trochę dawno zajmowałem się obsługą drukarek na LPT poprzez mikrokontrolery.
    Wtedy też stworzyłem w BASCOM BASIC'u program, dzięki któremu możliwe jest bezpośrednie drukowanie tekstu z klawiatury podpiętej do układu na złączu PS2.

    Drukarka:

    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Maszyna do pisania ze starej drukarki igłowej

    Wydruk:
    Maszyna do pisania ze starej drukarki igłowej

    Układ wykonałem na płytce testowej własnego projektu:

    Maszyna do pisania ze starej drukarki igłowej

    jako mikrokontrolera użyłem atMega1280 (taki mam na pokładzie), ale program bez funkcji Print_text z powodzeniem mieści się na procesorze at90s2313, gdyż takim dysponowałem w momencie tworzenia układu (stąd optymalizacja wykorzystania wyprowadzeń i pamięci w programie maszyny do pisania,)

    Urządzenie pozwala na wybór pogrubienia, kursywy lub podkreślenia i dowolne łączenie tych formatowań. Zaimplementowałem też obsługę polskich znaków, jednak z powodu zbyt małego warsztatu programistycznego działa ona na zasadzie: wciśnij i zwolnij alt, następnie wprowadź właściwy znak, do którego ma zostać dodana odpowiednia zmiana.

    Jako drukarki można użyć dowolnej pracującej w standardzie ESC/P EPSON (w przypadku standardu ESC/P IBM formatowanie wymaga drobnych zmian w programie)

    Ja użyłem Optimusa SA-2400 - bo taką miałem gdzieś z odzysku, ale oprócz lekko uszkodzonej klapy jest w pełni sprawna (trzeba by jeszcze co prawda nasączyć na nowo taśmę)

    Oprócz tego podaję jeszcze kod źródłowy przydatnego narzędzia, które pozwala na wysyłania dowolnych komend poprzez port LPT, co umożliwia testowanie innych funkcji bez konieczności przeprogramowania uP

    Obecnie pracuję nad obsługą trybu graficznego tej drukarki (to znaczy wiem jak to się robi, ale konieczne jest napisanie funkcji upraszczających jego obsługę)


    Składam serdeczne podziękowania osobom pomocnym w tym temacie: https://www.elektroda.pl/rtvforum/viewtopic.php?t=1053116&highlight=


    Fajne!
  • Arrow Multisolution Day
  • #2 14 Maj 2010 21:31
    tragi
    Poziom 22  

    Bardzo interesujący pomysł, ciekawi mnie jadna sprawa w działaniu twojej maszyny do pisania: czy cały pojedynczy znak jest drukowany bezpośrednio po wprowadzeniu go z klawiatury?

    Pozdrawiam

  • #4 14 Maj 2010 22:28
    piotrva
    Moderator na urlopie...

    dla satysfakcji i z chęci ożywienia starej drukarki.
    co do drukowania to ta wersja oprogramowania drukuje znak po znaku zaraz po wciśnięciu klawisza.
    ale pracuję nad wersją ala edytor tekstowy - na wyświetlaczu lcd mamy tekst (graficzny = 8*40 znaków) dodatkowo zapisany w pamięci.
    wyświetlacz ma być scrolowany i potem druk całego tekstu. Takie mam plany (bo mega1280 daje duże możliwości), ale co z tego wyjdzie to nie wiem ;-)

  • Arrow Multisolution Day
  • #5 15 Maj 2010 10:48
    gemiel
    Poziom 21  

    Jako wprawka do budowy urządzeń to owszem. Natomiast nie widzę praktycznego zastosowania tego projektu. Na dzień dzisiejszy używana elektroniczna maszyna do pisania to jakieś 40zł. A tutaj mamy osobno drukarkę, klawiaturę i pajęczynę przewodów z płytką i wyświetlaczem. Bez możliwości edytowania tekstu w ogóle nie da się na tym napisać czegokolwiek. Elektroniczne maszyny do pisania mają dodatkowo możliwość założenia taśmy korekcyjnej. Więc można na nich kasować napisane znaki. Do tego mają też porządne czcionki a nie punktowe, znacznie czytelniejsze i estetyczniejsze od punktowych znaków drukarek igłowych. Jak wygląda tekst z igłówki to widać na niektórych rachunkach.
    Co do osób, które nie potrafią pisać przy użyciu komputera to jest to garstka starszych ludzi. W większości na maszynie też nie pisali.

  • #6 15 Maj 2010 11:17
    Tomekddd
    Poziom 23  

    Ciekawy projekt, a ja się zastanawiam jak jest ze sterowaniem drukarki wbudowanej w kasę fiskalną? Są to malutkie igłówki do wydruku rachunków. Nie wiem tylko jak taką wysterować, a gdyby się udało to też by był fajny bajer.

    Może autor tego tematu coś doradzi?

  • #7 15 Maj 2010 11:58
    DjExit
    Poziom 23  

    Tomekddd napisał:
    Ciekawy projekt, a ja się zastanawiam jak jest ze sterowaniem drukarki wbudowanej w kasę fiskalną? Są to malutkie igłówki do wydruku rachunków. Nie wiem tylko jak taką wysterować, a gdyby się udało to też by był fajny bajer.

    Może autor tego tematu coś doradzi?

    W kasach fiskalnych są drukarki termiczne, chyba że jakieś dużo starsze.

  • #8 15 Maj 2010 12:14
    maciex1993
    Poziom 14  

    gemiel napisał:
    Jako wprawka do budowy urządzeń to owszem. Natomiast nie widzę praktycznego zastosowania tego projektu. Na dzień dzisiejszy używana elektroniczna maszyna do pisania to jakieś 40zł. A tutaj mamy osobno drukarkę, klawiaturę i pajęczynę przewodów z płytką i wyświetlaczem. Bez możliwości edytowania tekstu w ogóle nie da się na tym napisać czegokolwiek. Elektroniczne maszyny do pisania mają dodatkowo możliwość założenia taśmy korekcyjnej. Więc można na nich kasować napisane znaki. Do tego mają też porządne czcionki a nie punktowe, znacznie czytelniejsze i estetyczniejsze od punktowych znaków drukarek igłowych. Jak wygląda tekst z igłówki to widać na niektórych rachunkach.
    Co do osób, które nie potrafią pisać przy użyciu komputera to jest to garstka starszych ludzi. W większości na maszynie też nie pisali.


    Nie ważne, czy praktyczne czy nie. Najważniejsza jest nauka, doświadczenia podczas budowy oraz przeogromna radość z działającego urządzenia. Takie moje zdanie. Projekcik wyszedł bardzo fajnie, wykorzystane zostały walające się graty i to się liczy.
    Pozdrawiam

  • #9 15 Maj 2010 12:53
    piotrva
    Moderator na urlopie...

    Owszem, projekt nie ma spełniać żadnego zadania praktycznego, jedynie miał reaktywować starą drukarkę - po co komu coś takiego w dobie komputerów.
    A co do zastrzeżeń dot. "pajęczyny przewodów" to jak pisałem wykorzystałem płytkę testową, która może służyć do budowy wielu urządzeń bez konieczności każdorazowego montowania układu lub trawienia płytki.
    Co do drukarek z kas fiskalnych:
    spotyka się i igłowe i termiczne (widziałem ostatnio w nowym supermarkecie drukarki igłowe w kasach fiskalnych)
    co do sterowania to pierwsze musisz wiedzieć czym konkretnie chcesz sterować, a potem szukać jak
    niektóre z tych drukarek od kas fiskalnych (z tego co wiem) były sterowane przez rs232, ale nic więcej nie umiem powiedzieć, bo nie zgłębiałem tych kwestii (gdyż nie posiadam takowej drukarki, skoro mam sp-2400, a urządzenie ma być tylko w ramach "zabawy")

  • #10 15 Maj 2010 15:39
    jankol-el
    Poziom 20  

    Pomysł świetny, żeby wykorzystać coś co stoi w kącie i się kurzy tylko. Bardzo ciekawy i godny pochwał projekt. Kto wie, może się Koledze gdzieś przyda do jakichś praktycznych zastosowań.
    Mam moduł drukarki termicznej z kasy fiskalnej, myślałem o tym jak można to wykorzystać, nawet rolkę papieru posiadam. Dobrym pomysłem jest, żeby to połączyć z jakimś prockiem, żeby drukowało jakieś logi itp. Jeśli ktoś wie jak tym się można pobawi z sensem to proszę info.

  • #11 15 Maj 2010 16:18
    Tomekddd
    Poziom 23  

    W starszych kasach fiskalnych (ja miałem w OPTIMUS-ie) drukarkę najprawdopodobniej igłową. Jest ona sterowana z płyty głównej kasy więc tam pewnie siedzi sterownik. Drukarka ma tylko wiązkę przewodów, jedne są do zasilania silników napędowych, inne do kontaktronów (z tego co rozkminiłem jeden jest od obrotów a drugi nie mam pojęcia) reszta przewodów idzie taśma do cewek i jeśli odpowiednie będą pod napięciem cewka wystrzeliwuje rdzeń w kalkę robiąc punkt na papierze. Napięcie musi być podawane impulsami bo po zaniku rdzeń się chowa do cewki.

    Tyle udało mi się dojść pomiarami i próbami. Kiedyś też pisałem na innym forum i ktoś uruchomił taką drukarkę ale inny model. Tamta miał 40 punktów na jeden wiersz nie wiem jak ma moja bo nie sprawdzałem.

    Gdyby udało się ją wysterować to byłby dopiero ciekawy bajer bo można by mieć całkowicie przenośną drukarkę np. do ściąg :D ale nie tylko.

  • #13 15 Maj 2010 22:12
    Tomekddd
    Poziom 23  

    Zdjęcia stare bo drukarka jest gdzieś w warsztacie i dopiero muszę ją odkopać.

    Code:
    [url=http://www.fotosik.pl/pokaz_obrazek/0a7bc2a7cc539dc1.html]Link[/url]
    
    [url=http://www.fotosik.pl/pokaz_obrazek/aff1a3a80c0e455a.html]Link[/url]
    [url=http://www.fotosik.pl/pokaz_obrazek/796ca84fa25ca5d3.html]Link[/url]
    [url=http://www.fotosik.pl/pokaz_obrazek/cfc793e97e4dafc3.html]Link[/url]
    [url=http://www.fotosik.pl/pokaz_obrazek/ca9306dc49d13ba4.html]Link[/url]
    [url=http://www.fotosik.pl/pokaz_obrazek/435183b00b921f19.html]Link[/url]

    reg. wew. pkt. 2


    To jest drukarka igłowa i są na niej jakieś oznaczenia ale to bardziej na numery seryjne wygląda.
    Drukarka z tego co wiem posiada kontaktron do liczenia obrotów wału silnika przesuwającego całą głowicę z cewkami, jeśli głowica przejedzie od jednej strony do drugiej to drukarka przechodzi do kolejnego wiersza czyli papier zostaje lekko wysunięty. W mechanizmie jest jeszcze coś w rodzaju prądniczki (cewka i chyba rdzeń) nale nie wiem do czego, albo to jakiś hamulec albo też coś do sprawdzania położenia

  • #15 16 Maj 2010 13:06
    piotrva
    Moderator na urlopie...

    ten sam projekt nie mógł być, bo jak doszedłem do zrobienia tej obsługi można znaleźć w temacie do którego link załączyłem w pierwszym poście ;-)
    Co do tej małej igłówki z kasy - zdjęcia nic nie mówią. A są tam jakieś układy scalone?? jak tak to może na nich są nalepki z np. wersją firmware'u...

  • #16 16 Maj 2010 19:44
    Tomekddd
    Poziom 23  

    W drukarce żadnych scalaków nie znalazłem, ale są na PCB kasy tylko muszę ją wykopać bo nie wiem jakie tam były.

  • #18 17 Maj 2010 17:14
    Tomekddd
    Poziom 23  

    Ja też tak czuje, ale własnie nie bardzo wiem jak tym sterować żeby cokolwiek napisać, tak żeby sie nie rozwalało po papierze.

    Na płycie na pewno nie ma sterownika bo z tego co przeglądałem steruje nią procesor

  • #19 18 Maj 2010 17:09
    piotrva
    Moderator na urlopie...

    musisz napisać:
    1. obsługa przesuwu papieru
    2. obsługa przesuwu głowicy
    3. obsługa uderzeń igły
    4. zamknąć to w funkcjach (np. linefeed(), nexverttline(), printvertline(tu zapisane które igły mają uderzyć)
    5. dodać obsługę znaków z plików .font (co nieco może pomoże Ci ten kod: https://www.elektroda.pl/rtvforum/viewtopic.php?t=1584593&highlight= , drukuje ona na wyświetlaczu graficznym piksel po pikselu właśnie z plików czcionek, może się przydać na tym etapie)

  • #20 18 Maj 2010 17:20
    Tomekddd
    Poziom 23  

    O takie coś mi chodziło dzięki, niedługo ukończę budować sterownik do lampek i biorę sie za to

  • #22 20 Maj 2010 13:57
    piotrva
    Moderator na urlopie...

    Przedstawiam wersję jak na chwilę obecną finalną.
    Co do pamięci to na razie nie chce mi się definiować polskich znaków do wyświetlania na LCD (t6963c), stąd nie będę dodawać tej funkcji i drukarka drukuje od razu wszystko z klawiatury.
    lista funkcji:
    1. możliwość wyboru trybu ręcznego przesyłu komend do drukarki lub automatycznego drukowania (maszyna do pisania)
    2. obsługa polskich znaków
    3. menu LCD do przełączania formatowania:
    pogrubienie, podkreślenie, kursywa, nlq(wysoka jakość) podwójna wysokość, podwójna szerokość, drukowanie podwójne, drukowanie dwukierunkowe, ndeksy górny i dolny, wybór jednej z 5-ciu czcionek programowo (automatyczne przełączanie NLQ dla czcionek)
    4. automatyczny przesuw o 2 linie przy trybie podwójnej wysokości czcionki
    5. drukowanie inteligentne - drukarka drukuje przy przerwie w pisaniu na klawiaturze (niestety nie ma możliwości zwiększenia czasu oczekiwania <<użyłem do osiągnięcia tego efektu jednej z funkcji drukarki>>, dlatego trzeba pisać szybko; mimo wszystko efekt jest widoczny w trybie podwójnej wysokości)
    6. możliwość ponownego zresetowania drukarki klawiszem [esc]
    Załączam kod źródłowy programu.
    teraz rozpocznę pracę nad trybem graficznym tej drukarki (chcę osiągnąć efekt podobny do działania funkcji Line z Bascoma), gdyż chcę ją wykorzystać jako ploter wykresów temperatury
    jeśli wrócę kiedyś do projektu tekstowego to dodam funkcję pamięci jednej linijki

  • #23 03 Cze 2010 21:11
    maniekes
    Poziom 2  

    siema!
    chciałbym się przyłączyć do pytania pana Tomekddd, posiadam w pełni sprawną drukarkę fiskalną Emar Duo Pro, w niej są dwa moduły termiczne Axiohm htpn 9250, z każdego wychodzi jedna tasiemka do komunikacji(w której jest ok 8-10 przewodów) oraz wtyczka do zasilania. Rozbierałem ją i w środku poza tym znalazłem 3 osobne płytki pcb, jedna prawdopodobnie do sterowania klawiaturą i wyświetlaczem, na drugiej są z 2 wyjmowalne epromyy lub flashe, jakiś procek i pamięć(plus złączki do com zasilania itd), a na trzeciej nie ma praktycznie nic(do niej są podpięte mechanizmy drukujące).
    ma ktoś pomysł jak wynaleźć stamtąd układ odpowiadający za drukowanie? (oczywiście drukarka działa w trybie tekstowym)
    ewentualnie w jaki sposób komunikować się z tymi mechanizmami, a już sterownik postaram się sam napisać
    wpisywałem w google nazwy układów, ale jedyne co znalazłem to to, że ten mechanizm kosztuje $50...

    jeżeli w ten sposób nie narażę się firmie Emar, to mogę wrzucić fotki tych płytek pcb i reszty drukarki

    ps: to link do niej: http://www.emarserwis.pl/mr/showitem/drukarki/tradycyjne/emar/duo_pro

  • #24 03 Cze 2010 22:09
    piotrva
    Moderator na urlopie...

    cóż, szczerze mówiąc to są 2 sposoby:
    1. znaleźć jakimś cudem kartę katalogową i standardy sterowania
    2. podpiąć się do samego sterowania głowicy drukującej (jak pisałem wcześniej)
    lub 3. nabyć nową drukarkę/drukarynkę do której wcześniej znajdziemy dokumentację ;-)

  • #25 04 Cze 2010 10:44
    maniekes
    Poziom 2  

    cóż, kupno nowej nic mi nie da, ponieważ książka dla kasjera jest dostępna z tego adresu, który podałem, ale tam są tylko informacje o podpinaniu jej do szuflady, niektóre kody błędów i takie tam informacje o działaniu w trybie fiskalnym.
    protokół komunikacji przez RS232 też jest b dobrze opisany na stronie posnetu, ale to nic nie da bo to same instrukcje kasowe.
    chciałem zrobić tak jak mówiłeś, spróbować zbudować sterownik do tego mechanizmu, ale nie wiem w jakich standardach się z nim komunikować i dlatego napisałem tego posta
    jeszcze widziałem, że w niej jest kilka wyjmowalnych kostek(niestety numery ich są pozaklejane plombami). może któryś z nich to sterownik drukowania?
    na dniach postaram się zeskrobać wszystkie plomby i wrzucić foty płytek, może ktoś będzie miał pomysł :D

    ps: pisze też o tym, ponieważ nie wiem czy to nie jest porywanie się z motyką na słońce, bo może np drukarki fiskalne mają jakieś zabezpieczenia przed 'nieautoryzowanym' dostępem do mechanizmu drukującego, ale mam nadzieję, że nie, bo drukarka ma ponad 10 lat

  • #26 02 Lip 2010 12:19
    marbu
    Poziom 10  

    witam
    1.) bierzemy dowolną starą płytę główną z procesorem od komputera, może być nawet 486 DX SX czy starsza, podłączamy dowolną igłówkę
    2.) Podpinamy floppa + dyskieta z systemem np. MSDOS v6.22
    3.) w autoexec.bat wpisujemy linijke na końcu: "copy con prn"
    4.) Wyrzucamy monitor
    5.) Mamy gotową maszynę do pisania, każdy znak jest odwzorowywany, działa też backspace
    Z tego co pamiętam kończy drukowanie Ctrl+Z