Jump to content

Recommended Posts

Posted

Hi everyone

 

Depending on your point of view, this is either a pointless exercise or an intriguing challenge...! Anyway, here goes.

 

We have a couple of OMRs (DRS CD210 models) that are used extensively (excessively?!) for registration. One recently required some attention to get it back on top form, and the process of sorting it out led me to the conclusion that they're pretty robust devices, and could have other uses. For example - DIY survey and form collection, etc. Also, one of the IT teachers noticed the device in my office and asked if it could be used to show the pupils another form of input device (they get bored with keyboards, mice and so on), and I thought I might be able to produce some demo forms for them to play with etc.

 

I looked for some freeware that might interface with the OMR but with no success. So, I've started interrogating the serial data that flows when the OMR is being used for registration, and worked out what controls are sent from the PC to the OMR to get it 'ready' for scanning; this process clearly also sets up the parts of the page to scan (via a hexadecimal string which requires some further investigation; for now, I'm using the one the register program sends it). I've managed to get a sheet fed through, the result of '0' returned (as it was a blank page!) and sent the 'accept' or 'reject' commands back to the OMR, which either ejects the sheet into the output bin or throws it backwards for a retry.

 

In my opinion, this would be enough to demonstrate the principle to the students, but I'd ideally like to make a little interface program to send and receive the appropriate commands via simple buttons, rather than have to type in loads of ECHO statements into a DOS window. Also, if they could 'code up' a sample OMR sheet and see the reader interpret their marks, that would be quite nice. Does anyone have any thoughts on this, please?

 

If anyone's interested in my discoveries so far (including the commands for controlling the OMR etc) then I'm more than happy to share!

Posted
I can't think of any use for it... but I am utterly intrigued by it!

 

There's no practical use for it in a real world situation but I think it's a great idea to get the students to use it and understand it. ICT these days is just word processing and using dodgy fonts in powerpoints which are badly designed from the get-go.

 

And let's be honest, the optical system is very similar to the old punch card program systems that computers started with (I admit, I have never, ever seen a punch card system! I'm far too young for ancient stuff like that :D) so it could be a good opportunity to get the kids thinking about how far technology has come, like you said sdc, if you can get the students to "program" up a "card" for the machine to read and execute it would be a superb analogy. If you can get the software to interpret some form of symbolic code, even if it's simple stuff like "choose a colour RED:[ ] GREEN:[ ] BLUE:[ ]" and stuff like "Say: HELLO WORLD[ ] SYSTEM BOOTUP[ ]" and so on... just to make a simple multiple choice "program" ...

 

Anyhoo... Probably quite ambitious if you are manually decoding serial output but you never know :D Wish I had one lying around now...

  • Thanks 2
  • 1 month later...
Posted
That would be very useful, thanks.

 

Here you go. All instructions must be preceded with a '+' sign. When you 1st switch on an OMR it must be 'Framed' to set the baud rate,stop bits etc. Send a stream of '+U+*+U+*'.

 

Only commands supported by DRS’ current range of readers are shown here.

See SOS help for detailed description of these commands.

 

+Command Function Notes

! Reboot

# Unpick

$ Set clock track 5

% Set mark algorithm 5

& Row offset (Virtual clock) A

( Load printer P

) Print P

" Purge all sheets *

 

1 (and 2-9) Increment buffer

< Single sheet mode *,8

> Multi sheet mode *,8

= Echo next character

? Load test pattern

} Reset print FIFO P

 

^ Reset to defaults

@ @ thru O mode

A Additive

B Bad sheet

C Get decode checksum

 

D Display / Beep A

G Good sheet

H Hoerizontal decode

I Invert decode

J Get density 0

K Kill time

L Get sheet length

M Get OMR model number

N Switch settings

O Cancel (Overwrite)

P Pick a sheet 7

 

Q Discriminate/Sensitivity

R Send row image

S Send data to host 0

 

T Time out enable

U Underside/rear D

V Vertiacl decode

W Wait for start button

X Hexadecimal mode

Y Oritive (Yoritive) decode

Z Zero decode buffer

a Additive two

 

c Count selected character

d Get barcode data/info 2

j Get density (non space) 1

k Convert characters

l link barcode data 2

p Pick for printing P,9

q reset discrimination/sensitivity

s Send data (non space) 1

 

t Set barcode track 2

 

v Version of SOS

w Width (No of tracks)

x Megadump 4

y Reader ID

z Get sheet count

 

NOTES:

 

1, 2, 3, 4, 5 etc… The numbered option must be granted for this command to work.

 

A Only Automatic readers

D Only double sided readers

P Only readers with optional Transport printer fitted

Only CD4xx, CD8xx, PSxxx models

 

©

 

_____________________________

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...