Hardware

Wer sich den Schaltplan vom MonolithEEG ansieht und das ModularEEG kennt, findet viele Dinge wieder. Ein paar Änderungen im analogen Signalweg sind dennoch vorhanden. So erhielten die Instrumentation Amplifier eine aktive Arbeitspunktstabilisierung an ihren Referenzeingängen. Die Stabilisierung bildet gleichzeitig den ersten Hochpass mit einem geringen Ausgangswiderstand im Verhältnis zum nachfolgenden Tiefpass. Dieses erste Tiefpassfilter dient als Vorfilter für den bereits im ModularEEG verwendeten Sallen-Key-Tiefpass. Beim MonolithEEG ist die Schwingneigung dieses Filters etwas erhöht, was für eine bessere Steilheit sorgt. Das Vorfilter verhindert ein Klippen an den Versorgungsspannungsgrenzen des nachfolgenden Hauptfilters, da es das Überschwingen vom Hauptfilter dämpft. Ein leichter Tiefpass als Nachfilter korrigiert minimal den Frequenzgang und bietet den Kapazitäten im ADC genügend Ladung für die Umsetzung an. Der gesamte Signalweg zeigt so eine höhere Steilheit im oberen Nutzbereich und wird so der Abtastung bei 1024Hz mit einer Auflösung von mehr als 10Bit gerecht. Alle Widerstände sollten als 1% Metallfilm ausgeführt sein. Die Folienkondensatoren für die beiden Sallen-Key-Tiefpässe hatte ich mit 2% Typen gewählt.

Für die Optokoppler kommen beim MonolithEEG 6N137 zum Einsatz. Diese können Daten auch mit Bauraten bis über 1MBaud sicher übertragen. Hierdurch ist beim MonolithEEG ein einfacher Weg zu höheren Samplerates geebnet. 

 

 

 

●           miniaturisiert auf 101 x 61 x 26mm

●           beschränkt auf 2 EEG Kanäle mit je 10 Bit Auflösung

●           nur eine Platine mit SMD Bauteilen

●           Designed für ein Pactec JM 42-000  Gehäuse

●           USB via FTDI232

●           Versorgung über USB

●           vollständig galvanisch getrennt

●           keine Schirmung des Gehäuses nötig

●           keine Schirmung der Kabel nötig

●           Expansion Port herausgeführt

●           Programmieradapter in den Expansionport integriert

●           ATMega8 Controller von Atmel

●           Messleitungen über neunpolige D-sub Buchse

●           Nur für erfahrene Lötkolbenvirtuosen geeignet

●           Kompatibel unter anderen zu ElectricGuru, BrainBay und Bioera

Warnung

Wer sich solch ein MonolithEEG nachbaut, sollte sehr gewissenhaft vorgehen und darauf achten, das die galvanische Trennung jederzeit gewährleistet ist, solange die Elektroden am MonolithEEG sowie Körper kontaktiert sind! Insbesondere ist darauf zu achten, dass der Programmieradapter nicht im MonolithEEG verbleibt, wenn am Körper gemessen wird! Dieses System ist nicht zertifiziert und jeder handelt bei einer Benutzung welcher Art auch immer auf eigene Verantwortung.

Weitere Warnhinweise

Testprozedur

In Grunde hat sich der Testablauf gegenüber dem ModularEEG nicht geändert.  Die Erzeugung des Testsignals ist aus Platzgründen nicht, wie beim ModularEEG, auf der Platine des MonolithEEG integriert. Hierfür benötigt man einen Teststecker aus sechs Widerständen, einem neunpoligen D-Sub-Stecker, einem Stück Lochrasterplatine und einem Stück Kabel. Für das kurze Kabelstück nahm ich ein altes PC-Kabel.

 

Programmieren des Controllers

Das MonolithEEG hat keinen gesonderten ISP-Adapter wie das ModularEEG. Die letzten 6 Pins (11 bis 16) des  Erweiterungsport stellen diese Anschlüsse nun bereit. Die Belegung entspricht genau der Standardbelegung des sechspoligen ISP-Adapters des STK500 oder des AVR-ISP. Wer kein Tool von Atmel besitzt kann auch einen Selbstbauprogrammieradapter wie den SP12 verwenden. Hierfür muss aber die Pinbelegung des Adapters die nun sechspolige Variante erhalten.

Damit der ATMega8 auch richtig konfiguriert wird, hier die Fuse und Lockbits:

 

Software

Wie bereits oben erwähnt wurde die Software auf verschiedene Abtastraten und Baudraten erweitert. Die Software für die MonolithEEG Hardware ist für den verwendeten Taster sowie Status LED geringfügig angepasst. Der Sourcecode enthält die Möglichkeit die eingebrachten Neuerungen auch für das ModularEEG zu verwenden. Mittels bedingter Compilierung können zwei Switches über AT90S4433, ATMega8, ModularEEG oder MonolithEEG entscheiden.

Das MonolithEEG ist nach dem Einschalten immer Offline, d.h. es sendet keinen Datenstream, versteht aber Kommandos. Die Taste startet und stoppt den Datenstream. Die Software unterstützt die das Protokoll p2 aus dem ModEEG und das erweiterte p21 von Jarek Foltynski für das BioEra Tool.

Wer die Software verändern oder erweitern möchte kann den Source Code mit dem avrgcc bzw. mit WinAVR compilieren.

Download MonolithEEG Firmware Makefile, C-Source und Hexfile

 

Platine, Pcb

Die Hardware besteht aus nur einer Platine. Der Controller, die USB Schnittstelle, die Referenz und alle Verstärker sowie Filter sind dort untergebracht. Dank einem Großteil an SMD Bauteilen konnte die Platine ein Maß von 54x90mm erreichen und passt dabei in ein handelsübliches  Kunststoffgehäuse. Alle Bauteile sind bei Reichelt und RS-Components erhältlich und damit für jedermann/frau beziehbar. Für die Platine gibt es keinen Vertriebsweg, wie bei dem ModularEEG über die Firma Olimex in Bulgarien. Ich hatte meine Boards (leer) bei PCB-Pool fertigen lassen, da ich nun schon seit einigen Jahren deren Qualität dankend in Anspruch nehme und immer wieder zufrieden bin. Die Platine wurde mit Eagle 4.1x erstellt. Von Eagle existiert eine limitierte Version für den Hausgebrauch.

Da ich ein paar Platinen mehr habe fertigen lassen, als ich benötigte, sind welche übrig geblieben. Wer also Interesse an einem leeren Board hat, kann sich bei mir melden.

 

Anschlüsse

Beim Controller wurde darauf geachtet, möglichst viele Multifunktionspins an den Erweiterungsport zu legen. Im Fall von PD6 und PB0 war ein Kompromiss nötig, beide IO Leitungen liegen über einen einem 220 Ohm Schutzwiderstand an einem Pin des Expansion Ports. Durch das Auflegen des ISP-Adapters sind so nun ein zusätzlicher PWM Ausgang (nun insgesamt 3) verfügbar. Das MonolithEEG ist somit programmierbar ohne das es nötig ist dabei das Gehäuse zu öffnen, natürlich ist das mit einem Bootloader ebenso beim ModularEEG möglich. Zudem kann der SPI-Bus für die ein oder andere externe Hardware von Nutzen sein. Ungewöhnlich ist sicherlich die Anbindung der Messleitungen an das MonolithEEG . Dabei eröffnet einem diese neunpolige D-Sub Buchse diverse Vorteile. Sie ist abgeschirmt, günstig, vergoldet, platzsparend und überall zu bekommen. Sie vereint beide Messkanäle und die DRL-Leitung in einem Stecker. Somit lassen sich Headsets bauen, bei denen man nicht ständig überlegen muss welcher Kanal mit welcher Polarität an welcher Stelle am Kopf platziert wird. Als letztes sei die USB Schnittstelle erwähnt. Sie bildet neben der Kommunikationseinheit auch die Stromversorgung. Batteriekästen, Akkus oder Steckernetzteile entfallen damit.

USB

Für den Betrieb mit dem USB-Controller FTDI232 muss der Virtual COM Port (VCP) von FTDI auf dem PC installiert sein. Dieser Treiber sorgt dafür, dass die USB-Schnittstelle im MonolithEEG  wie ein normaler RS232 Port im PC angemeldet und auch so verwendet wird.

Der ein oder andere erkennt vielleicht, dass die Platine von Hand gelötet und durch Waschen (kein Wasser) vom Flussmittel befreit ist. Ich nutze zum Löten einen Weller WSD81 mit schräger, dicker Lötspitze. Ein regelbarer Lötkolben sollte es auf jeden Fall sein, da die 2%igen Kondensatoren des AA-Filters keine hohen Temperaturen vertragen. Diese Kondensatoren hatte ich mit 250°C gelötet, den Rest mit 300°C. Wer das mit einer dünnen Lötspitze versucht, wird an den Masseflächen mit dem Kolben kleben bleiben, die Bauteile werden dann zulange erhitzt und die mechanischen Belastungen des klebenden Lötkolbens erledigen den endgültigen Exitus.

Im übrigen sollte man sich genau überlegen in welcher Reihenfolge bestückt und gelötet wird, damit man sich nicht die Zugänglichkeit zu den Lötterminals verbaut. In der Regel fange ich mit den Halbleitern an, dann mit den Widerständen, kleine Kondensatoren und dann die hohen Kondensatoren. Stecker und andere im Vergleich zum Vogelfutter großen Bauteile kommen zum Schluss. Wer glaubt solch ein TQFP dauert mehr als 10min, wird den Baustein und die Platine mit Sicherheit schädigen. Mit Ausrichten, Fixieren, Durchlöten und Sichtkontrolle benötige ich gerade mal 2 min. Die kurzzeitige Wärmemenge ist der Schlüssel zum Erfolg, nicht die Temperatur.

 

Download MonolithEEG Eagle Dateien

Download MonolithEEG PDF-Schaltplan

Bauteilliste MonolithEEG BoM

Der Monolith im JM 42-000 Gehäuse

Non Plagiat

Auch wenn einige Leute es gar nicht ahnen, dass deren Anregungen hier eingeflossen sind, will ich diese nicht ungenannt lassen. Es ist übrigens eine extreme Häufung des Anfangsbuchstabens im Vornamen festzustellen. Ob das etwas zu bedeuten hat?

 

Das p21 Protokoll

Jermaine Lewis

Der 10nF Kondensator im Frontend für ein besseres CMRR

Jim Peters

Hardware Tipps auf der OpenEEG Seite

Jörg Hansmann

Das ModularEEG Basisdesign

Jörn Walter

Durch ein Gespräch mit Ihm kam ich auf die Idee, das ModularEEG in das MonolithEEG umzuformen.

Jarek Foltynski

Bottom Layer

Top Layer

Ein Teststecker für 333uVpp

Der eingesteckter Teststecker. Das 14Hz Rechtecksignal liegt an PB1

Dank

Vielen Dank an Christoph Veigl für die Anpassung der BrainBay Software an das MonolithEEG

 

Anschlussbelegung des MonolithEEG, die sechs linken Pins bilden den ISP Anschluss

Daten

Ich hatte drei Monolithen der Version 1.2 aufgebaut und gemessen. Der Vergleich mit der Simulation (PSPICE) bestätigt die erreichten Messwerte. Allerdings sollte nicht verschwiegen werden, dass die Messgenauigkeit bei den sehr geringen Amplituden einen hohen Fehler besitzen. Zur Bestimmung der Messwerte diente mir ein Tektronix TDS2012, ein 33120A Hewlett Packard Function Generator und ElectricGuru.

Frequenzgang im Nutzbereich

Dämpfungen der Aliasingfrequenzen

Sonstige elektrische Kenngrößen

CMRR Gleichtaktunterdrückung

Die CMRR wurde mit 50mVpp, 10Hz über jeweils 10k Widerstände an den EEG-Eingängen bestimmt

SNR Signal-Rauschabstand

Für die SNR wurden die vier EEG-Eingänge über jeweils ein 10k Widerstand gegen DRL gelegt

Die CMRR war im Versuch gegen DRL nicht mit den vorhandenen Geräten messbar und wurde daher mit einem Wert unterhalb des Rauschens angenommen

MonolithEEG     V1.2      Neue Version 1.3

Verbesserungen (durchgeführt in Version 1.3)

USB:

Die Suspend Mode des USB Interfacecontrollers wird nicht im MonolithEEG unterstützt. Zwar hatte ich damit noch keine Probleme, dennoch sollte dieser Umstand nicht übersehen werden. Nur weil bei mir keine Probleme mit dem USB auftraten, heißt das ja nicht, dass bei anderen alles glatt läuft. Wer also die Suspend Funktion einbauen möchte, sollte einen zusätzlichen P-MOSFET in die 5V Versorgung USB-seitig in das Layout einbringen. Der Pin 15 /PWREN des FTDI232 schaltet dann das Gate vom MOSFET. Alles was nicht zum USB Interface gehört muss über den Transistor führen. Näheres dazu kann im Datenblatt des FTDI232 entnommen werden.

Frequenzgang:

Im Schaltplan ist noch ein alternativer Frequenzgang mittels anderer Widerstände und Kondensatoren angegeben. Diese Kombination muss noch genauer getestet werden.

Gleich zu Beginn sollen die Lizenzbedingungen nicht ungenannt bleiben. Daher ist folgender Umstand ist zu beachten:

http://creativecommons.org/licenses/by-sa/2.0/

http://openeeg.sourceforge.net/doc/license.html

Beim ModularEEG lässt sich der 6N139 gegen den schnelleren 6N137 austauschen. Lediglich die Widerstände R125 und R130 auf dem Digital Board des ModularEEG müssen dazu entfernt werden, da sonst die Receiver in den beiden 6N137 dauerhaft abgeschaltet bleiben.

LOCKBITS 

0x3F oder 0xFF

 

# No memory lock features enabled

# Application Protection Mode 1, No lock on SPM and LPM

# Boot Loader Protection Mode 1, No lock on SPM and LPM

HFUSE    

LFUSE    

0xDF

0x3F

 

# Boot Flash section size = 128 words (not important)

# Brown-out detection level at Vcc = 4.0V

# Brown-out detection enabled

# Ext. Crystal/Resonator High frequ; Start-up time 16K CK + 64ms

EEG Eingangsspannungsbereich  

 

±250uV

Maximale  Offsetspannung bei 100nA

 

±140mV

 

 

 

Auflösung

 

10 Bit / 0.5uV

Auflösung (Effektiv)

 

9 Bit

Rauschen

 

1uVpp

 

 

 

Stromaufnahme

 

75mA

Versorgungsspannung

 

4.5 - 5.5V

Dämpfung

#1

#2

#3

Mittelwert

Simulation

-3dB HP

0.26Hz

0.27Hz

0.26Hz

0.26Hz

0.24Hz

-1dB HP

0.48Hz

0.49Hz

0.48Hz

0.48Hz

0.44Hz

-1dB LP

50Hz

46Hz

50Hz

49Hz

49Hz

-3dB LP

62Hz

60Hz

62Hz

61Hz

62Hz

Aliasingfrequenz

#1

#2

#3

Mittelwert

Effektive Bits

Simulation

Effektive Bits

128Hz

-21.1dB

-20.9dB

-20.9dB

-21dB

3.8

-20.5dB

3.7

256Hz

-51.8dB

-51.1dB

-53.3dB

-52dB

8.9

-42.6dB

7.4

300Hz

-54.5dB

-53.9dB

-56.9dB

-55dB

9.4

-48dB

8.2

512Hz

-77dB

-77dB

-77dB

-77dB

13

-67dB

11.4

#

Gegen VGND

Gegen DRL

1

8uVpp / -76dB

<1uVpp / <-94dB

2

8uVpp / -76dB

<1uVpp / <-94dB

3

8uVpp / -76dB

<1uVpp / <-94dB

#

uVpp

SNR

1

1

-54

2

1

-54

3

1

-54