Don't hesitate to contact me for further information!
"Bewegungsdetektor" ist ein Programm zur Simulation und zum Lernen des elementaren Bewegungsdetektors (EMD) wie er von B. Hassenstein and W. Reichardt 1956 vorgeschlagen wurde.
Bei Rückfragen, Anregungen, Wünschen einfach das Kontaktformular nutzen!
Welcome - Willkommen - a brief introduction about the program
Requirements - what is needed to run this program?
Installation - installation of the program
Usage - how to use the programm
Download - get your copy here
FAQ - frequently asked questions
This is a little application to learn and visualize the principles of the famous elementary motion detector (EMD) proposed by
by B. Hassenstein and W. Reichardt (1956). For leraning/teaching purpose it offers the option to do a
black box analysis from pure input/output behaviour observation (you may need an additional sheet of paper and a
pencil to solve this).
This software was created by Ulrich Beckers and is mainly intended for eductional purposes. The program supports English (default) and German.
Dieses ist ein kleines Programm um die Funktionsweise des berühmten elementaren Bewegungsdektors (EMD), wie er von
B. Hassenstein and W. Reichardt (1956) vorgeschlagen wurde, zu erlernen und zu visualisieren.
Für Lehr- und Lernzwecke bietet das Programm die Möglichkeit einer Blackbox-Analyse an Hand der Beobachtung des
Eingangs-/Ausgangssignalverhaltens (zum Lösen wird ein Blatt Papier und ein Stift hilfreich sein).
Das Programm wurde von Ulrich Beckers geschrieben, ist vorrangig für Lehrzwecke gedacht und unterstützt Deutsch und Englisch (Standard).
License - Lizenzbestimmung
This software is free for personal use. You may use it on your own risk. You are free to copy and distribute the archive. When distributing and/or spreading the program you must not:
I am happy for any feedback though.
Dieses Programm ist frei zur privaten Nutzung. Nutzung auf eigene Gefahr. Es ist erlaubt das Archiv zu kopieren oder zu verteilen. Wenn es angeboten oder verteilt wird darf nicht:
This software is written in the language Hollywood and hence available for many systems, either
as native application or as .hwa-applet code. There is no additional
software required and it should run on any computer running one of the supported operating
systems. Be sure, you have downloaded the program version for your particular operating
system. You may need a processor better not less than 400 MHz and a few MB of available
RAM as well as a screen resolution of at least 800*600 pixels and minimum 16 bit colour
Android: Android users require the Hollywood player to run the .hwa applet. The Hollyood player is freely available from the google play store. Since this program requires a keyboard, the usual Android device is probably not really suited for this application. If you happen to have an external keyboard for your Android system then you are very welcome to use it on Android, too.
Once you've downloaded the archive, unpack it and copy it to any destination you like (target drive needs at least 2.3 MB free space). You may put it on your harddsik, on a usb key or even on a server. There is no special installation process required.
Nach beendetem Download, das Archiv entpacken und einfach in ein beliebiges Verzeichnis kopieren (das Ziellaufwerk benötigt wenigstens 2,3MB freien Speicherplatz). Das Programm kann auf eine Festplatte, einen usb-Stick oder auch auf einen Server kopiert werden. Es gibt keinen gesonderten Installationsprozess.
Just doubleclick the icon named "Detektor" to launch the program. Once the splash screen disappeared you are asked to either start the simulation as a black box or with the underlying circuit shown. Choose one of the both options. If you select "black box" you will see the following:
On top of the window there is the input for the system. Move the little white rectangle box with the mouse (keep left
mouse button pressed while moving the white box) across the black box
to provide a visual motion input for the system. The yellow curve shaped things "r1" and "r2" denote
The white rectangle box is the actual visual input, but no information about colour or brightness is taken into account, it
is just "some" visual stimulus.
On top right there are four buttons. The button on top of the right side called "Pause" puts the system to hold. During pause the button shows green edges.
The second button ("Flicker") provides some global flicker/flashing signal as visual input for the system. It flashes until the button gets pressed again. Flashing is additionally indicated by a green edges of the button. While flicker is applied, the white rectangle box is not shown.
The third button ("2nd vis stim") enables a 2nd visual stimulus (a yellow rectangle). Albeit it is shown yellow it carries no actual information about colour, shape or brightness to the system (just as the white rectangle). To move the two rectangles the black area is halved in a upper and a lower half. Moving the mouse within the upper half moves the white rectangle while moving the mouse within the lower half moves the yellow rectangle.
The fourth button ("R-Filter") enables a filter property of the photoreceptors "R1" and "R2". The actual motion detector doesn't require this filter, but in many schemes this filter is included. By default it is switched on (shown by the green edges of the button). The system is probably easier to understand with that filter switched off. Just play around with that option and try to observe the difference and make your conclusion what kind of filter this may be.
Under the question mark the actual circuit is hidden. In the circuit version it is unmasked of course and you can see all signals actually travelling along the circuit. The underlying program works exactly as shown by the circuit. On the bottom there is an output region shown where the detector puts its output signal. Watch that place for output signals!
Be fair - don't cheet!
The circuit version comes with the option to change some properties of the detector and the photoreceptor filter in real time. The circuit version's options should be rather self-explanaining. Move the sliders with the left mouse button pressed.
You can quit the program by hitting the "quit" button or clicking the close gadget of the window or just by pressing Ctrl-C. The button "menu" takes you back to the welcome screen.
Grab your copy from here:
Windows x86 binary - V2.0 - Download
MorphOS ppc binary - V2.0 - Download
Amiga binary (68k) - V2.0 - Download
OS4 binary (ppc) - V2.0 - Download
AROS binary (x86) - V2.0 - Download
In case you are interested in a binary for OS X (x86 or ppc) or Linux (x86, ARM or ppc) please contact me
Or just get the universal .hwa applet code for the Hollywood player which is available for Android, Windows, OS X, Linux, MorphOS, Amiga and AROS:
V2.0 - Download (Hollywood player applet)
The archives are packed with lha or zip. Lha a common packer on MorphOS and the most common unpackers on other systems should be able to decrunch it, too.
In some rare situations a few signals get lost while travelling through the detector - why is that?
If there are more than 799 signal sprites present these get discarded with the current implementation. For most settings the available number of sprites is sufficient though.
I found a bug, like to discuss, give feedback!
Just drop the author a mail to ulrich.beckers|at|web.de or use the contact form.
In the circuit version there are a few unexplained buttons and sliders - how do I know their meaning?
With the the information provided here I try not to disclose too many details about the underlying circuit to warrant a valid black box analysis. Hence, some things are not explained. It is however planed to include some inbuild help function with one of the next updates to provide all missing information. Most things should be rather selfexplaining though, once you understand the model.
Windows says this program is potentially dangerous
Well, it's not dangerous, but the binary is not signed and hence, Windows warns about that issue. I don't want to judghe whether that behaviour of Windows is good or bad in general but signing the program costs money. If you don't want Windows to annoy you with warnings you may self sign the program or ask me for a copy on a CD or usb stick.
What's the issue with the insect the icon is showing?
It's a picture of the Chlorophanus beetle. Behaviour of that insect was studied by B. Hassenstein and W. Reichardt and let to their proposal about the elementary motion detector (see below).
The original work by Hassenstein and Reichard was published in 1956 and is a real classic of biological cybernetics.
The article is written in German.
Citation: Hassenstein B and Reichardt W, (September 1956): Systemtheoretische Analyse der Zeit-, Reihenfolgen- und Vorzeichenauswertung bei der Bewegungsperzeption des Rüsselkäfers Chlorophanus Zeitschrift für Naturforschung B 11(9) 513-524.
A pdf is available from the Max Planck Society, Tübingen: download
V2.0 released on 16-Mar-2016
- fully localized
- signal calculation improved, many internal changes
- requires less cpu power
- UI changed and improved
V1.5 released on 10-Aug-2015
- partly new visual design
- computation more "analogue" in the time domain now (improves e.g. behaviour with flicker input)
V1.4.1 released on 11-Jul-2013
- optimization of program routines yields a strong computing time reduction.
- the "resident sprites under the receptor"-bug got sorted out to a far extend
- more simultaneous signals possible (now 599)
V1.4 released on 13-Mar-2012
- removed some little bugs and prepared sourcecode for new features
V1.3 released on 09-Jan-2012
- changed visual input to be a white rectanguar box
- better colour scheme
V1.2 released on 09-Feb-2011
- improved UI: added the option to go back to the menu after a choice is made
- improved UI: added a confimation screen for the circuit choice
- improved: more simultaneous signals possible (now 480)
V1.1 released on 08-Oct-2010
- visual design improved
V1.0 released on 11-Nov-2009
- initial release
11-07-2013 Updated to V1.4.1
13-03_2012 Updated to V1.4
09-01-2012 Updated to V1.3
09-02-2011 Updated to V1.2
08-10-2010 Updated to V1.1
11-11-2009 Documentation started