SANAA
UREMBO NA USTAWI
UJANJA
UTAMADUNI NA HISTORIA
BURUDANI
MAZINGIRA
CHAKULA NA VINYWAJI
UHANDISI WA KINYUME
SAYANSI
MICHEZO
TEKNOLOJIA
VAZI
The Rotary Dial: A Number Sent as a Count of Breaks
Ed

Imeundwa na

Ed

27. Septemba 2026FI
6
0
0
0
0

The Rotary Dial: A Number Sent as a Count of Breaks

Strowger's automatic exchange stepped a selector once for each pulse it received — but early subscribers had to send those pulses by pressing buttons, a count at a time. The dial made it natural: pull a finger-hole round to a stop and let go, and the spring-driven return breaks the line once for each hole it passes. Alexander E. Keith, John Erickson and Charles J. Erickson of Chicago, assignors to the Strowger Automatic Telephone Exchange, filed US 597,062, *Calling Device for Telephone-Exchanges*, on 20 August 1896; it was granted 11 January 1898. Its finger-holds are set in a circle, a spring returns the dial, an escapement limits the return, and a switch in the return movement sends the impulses. This rung draws the pulse train, shows why the return must run at a steady speed, and decodes dialled pulses into digits with an Arduino.
Mwanzo
About 3 hours

Maagizo

1

The pulse train and the steady return

Inapakia daftari la Jupyter…
2

What the pulses drive

Each break steps a Strowger selector one position. The embedded blueprint shows the exchange the dial was designed to feed.
3

Read the 1896 calling device

US 597,062 describes the device as "a series of movable finger-holds of which some one is moved up to a stop and then released", the holds "disposed … in circular order". A helical spring K′ on the ratchet wheel returns the mechanism; the return is "limited by an escapement mechanism" whose pallets engage the pins of an escapement wheel, and a circuit-breaker makes the impulses as it returns. An indicator shows which of several magnets at the distant station is being worked. The later rotary dial kept the principle — wind by hand, send on the spring-driven return at a governed speed — and moved the finger-holds into the familiar perforated finger wheel.
4

The sketch that decodes the pulses

Counts breaks on pin 2, ends a digit after a 300 ms gap and a number after 3 s, and prints the digits. Ten breaks is 0.
dial_decoder.inoarduino
/*
  dial_decoder.ino -- decode a rotary dial's pulses into digits.

  A rotary dial's PULSE contacts open once per step as the dial returns. Wire them (or, to
  try it without a dial, a push button pressed quickly N times) between pin 2 and GND.
  The input uses the internal pull-up, so:  contacts closed = LOW, contacts open = HIGH.

  A digit is complete when no new break arrives for GAP_MS. Ten breaks means 0.
*/

const int PIN_PULSE = 2;
const unsigned long DEBOUNCE_MS = 10;    // contacts bounce; ignore changes shorter than this
const unsigned long GAP_MS      = 300;   // no break for this long = end of the digit
const unsigned long NUMBER_MS   = 3000;  // no digit for this long = end of the number

int lastStable = LOW;
int lastRead = LOW;
unsigned long lastChange = 0;
unsigned long lastBreak = 0;
int count = 0;
bool numberOpen = false;

void setup() {
  pinMode(PIN_PULSE, INPUT_PULLUP);
  Serial.begin(9600);
  Serial.println(F("Dial a number."));
}

void loop() {
  int r = digitalRead(PIN_PULSE);
  unsigned long now = millis();
  if (r != lastRead) { lastRead = r; lastChange = now; }

  // a change that has held for DEBOUNCE_MS is real
  if (now - lastChange >= DEBOUNCE_MS && r != lastStable) {
    lastStable = r;
    if (r == HIGH) {             // contacts just opened: one break
      count++;
      lastBreak = now;
    }
  }

  if (count > 0 && lastStable == LOW && now - lastBreak >= GAP_MS) {
    int digit = (count == 10) ? 0 : count;
    if (count > 10) {
      Serial.print(F("?"));      // more than ten breaks: a fault, not a digit
    } else {
      Serial.print(digit);
    }
    count = 0;
    numberOpen = true;
  }

  if (numberOpen && count == 0 && now - lastBreak >= NUMBER_MS) {
    Serial.println();
    numberOpen = false;
  }
}

Vifaa kwa hatua hii:

Arduino Uno R3Arduino Uno R31 kipande
Kitufe cha kubonyezaKitufe cha kubonyeza1 kipande
Nyaya za KuunganishaNyaya za Kuunganisha1 kipande
Bao la MajaribioBao la Majaribio1 kipande
Kipiga-namba cha kuzungushaKipiga-namba cha kuzungusha1 kipande

Zana zinazohitajika:

Kompyuta yenye IDE ya ArduinoKompyuta yenye IDE ya Arduino
Kipima-umeme cha aina nyingiKipima-umeme cha aina nyingi
5

Dial into it

Upload the sketch and open the serial monitor at 9600 baud. With a push button between pin 2 and GND, press it quickly three times, pause, then press it once: the monitor prints 31. Hold the button closed between presses — a dial's pulse contacts are closed at rest and open for each break. If you have a real rotary dial, find its pulse contacts with the multimeter on continuity: they read closed at rest and flicker open as the dial returns. Wire them in place of the button. Dial each digit and check the monitor. A dial whose digits come out one too many or too few has a pulse contact out of adjustment; one that prints ? is bouncing — raise DEBOUNCE_MS.

Zana zinazohitajika:

Saa ya kupima mudaSaa ya kupima muda
6

A dial that sends wrong numbers

Rotary dial faults, from the easiest to check.

Flow

Loading...
7

History and honest limits

**Alexander E. Keith**, **John Erickson** and **Charles J. Erickson** filed **US 597,062** on 20 August 1896, assigned to the Strowger Automatic Telephone Exchange; it was granted 11 January 1898. Rotary dials spread with automatic exchanges through the early twentieth century and were replaced by push-button tone dialling from the 1960s. **Honest limits.** The 10 breaks a second and 60/40 ratio are the later standard figures, not the 1896 patent's; exchanges accepted a range around them. The push button in the bench test cannot make breaks as regular as a governed dial.

Vifaa

5

Zana Zinazohitajika

3

CC0 Umma Wote

Mchoro huu umetolewa chini ya CC0. Uko huru kunakili, kubadilisha, kusambaza, na kutumia kazi hii kwa madhumuni yoyote, bila kuomba ruhusa.

Saidia Mtengenezaji kwa kununua bidhaa kupitia Mchoro wao ambapo wanapata Kamisheni ya Mtengenezaji iliyowekwa na Wachuuzi, au unda marudio mapya ya Mchoro huu na uiunganishe kama kiungo katika Mchoro wako kuchangia mapato.

Majadiliano

(0)

Ingia kujiunga na majadiliano

Inapakia maoni...