Code für Diy Beatmungsgerät

Ich brauche dringend Hilfe bei der Erstellung eines Codes für ein Diy Beatmungsgerät gegen Corona.

Die Hardware habe ich fertig. Bis ich mich in die Softwareseite eingelesen habe vergeht aber zu viel Zeit die wir nicht haben!

Folgende Bauteile habe ich im Einsatz.

1x Stepper Nema 17
1x Arduino Nano
1x DRV 8825 Treiber
2x Poti 10 Ohm
1x Endschalter 3 polig

Folgendes Verhalten benötige ich:

Nach dem Anschalten
-Stepper dreht sich langsam IM Uhrzeigersinn bis der Enschalter kommt und setzt dort 0.
(Referenzpunkt)

-Stepper dreht sich mit über POTI einstellbarer Geschwindigkeit GEGEN den Uhrzeigersinn.
-Nach erreichen des definierten Fahrwegs kurze Wartezeit von 0.5 Senkunden.
-Stepper dreht sich IM Uhrzeigersinn die gleiche Strecke zurück und wartet über Poti einstellbar die Zeit X bevor er wieder von vorne anfängt.

Das habe ich bisher.

Habe folgenden Code im Einsatz.

// Drive Stepper motor using DRV 8825 stepper motor driver
// for more info visit iknowvations.in

// first define the pins
const int DirPin = 4; // this pin defines direction CW or CCW
const int StepPin = 3; // pulse this pin to move one step
const int SPR = 200; // Steps per revolution

void setup()
{
// Make pins as Outputs
pinMode(StepPin, OUTPUT);
pinMode(DirPin, OUTPUT);
}
void loop()
{
// First let us rotate shaft clockwise
digitalWrite(DirPin, HIGH); // defines the direction to clockwise

// Pulse the step pin
for(int x = 0; x < SPR; x++)
{
digitalWrite(StepPin, HIGH);
delayMicroseconds(100);
digitalWrite(StepPin, LOW);
delayMicroseconds(1000);
}
delay(2500); // Short delay of one second

// Now rotate shaft counterclockwise
digitalWrite(DirPin, LOW);

// Again pulse the step pin
for(int x = 0; x < SPR; x++)
{
digitalWrite(StepPin, HIGH);
delayMicroseconds(1000);
digitalWrite(StepPin, LOW);
delayMicroseconds(1000);
}
delay(200); // Short delay of one second

}

Mag mir jemand helfen? Bitte es geht um Menschenleben!

kryptoo:
Die Hardware habe ich fertig.

Könntest Du ein Bild der Hardware posten? Dein per Copy+Paste entstandener Code wäre lesbarer, wenn er in Code-Tags stünde.

Gruß

Gregor

Bist du dir sicher, das du das wirklich bauen willst/kannst ?

Ich bin weiterhin der Meinung, trotz Corona, daß Leute die nicht verstehen gefährliche Dinge nicht tun/ bauen/ benutzen sollen.

Mag mir jemand helfen? Bitte es geht um Menschenleben!

Ich befürchte es ist grad deshalb besser Dir nicht zu helfen.

Von Deiner Teileaufstellung ist nicht ersichtlich ob die Teile zusammenpassen.
Außerdem schreibst Du nicht wie die Teile zusammen gebaut sind und was Du antreiben willst.

Ein Beatmungsgerät muß den Luftdruck messen. Außerdem muß ein Überdruckventil bzw ein Abschalten der Beatmung bei Überdruck implementiert sein.

Ich glaube nicht daß der Motor mit 500Hz bzw 900 Hz Steprate funktioniert.

Was nun?
delay(2500); // Short delay of one second
delay(200); // Short delay of one second

200 oder 2500?

Ohne fundiertes Wissen über die Theprie der Funktion eines Beatmungsgerätes solltest Du ein solches Projekt nicht machen wollen.

Grüße Uwe

Und Achtung:
Es sind schon Frauen wegen des Nähens von Schutzmasken abgemahnt worden.

Das Gerät ist als absolute Notbeatmung gedacht.

Ich stehe mit einem Professor aus Hannover in Kontakt.
Drücke beim ein bzw Ausatmen werden durch Ventile gesteuert.

Ausatmen zb. durch ein Peep Ventil.

Herzstück ist ein medizinischer Ambubeutel.
Aktuell wird gerade viel entwickelt um nicht wie Italien zu enden.

Ich bin mir absolut sicher das Gerät fertig zu stellen und die Dateien zu veröffentlichen.

Das Fachwissen kommt vom Prof., ebenso die Spezifikationen.

Er wird auch die Maschine begutachten!

Prototyp!!!

Wenn mein Leben davon abhängt, ob dieser Motortreiber durchhält, würde ich mich lieber erschießen als zu ersticken.
Aussdem wenn du erwartest dass man bei einem Programm hilft, dann sollte man zumindest mal SEHR GENAU wissen was dieser Motor macht / antreibt. Deine Beschreibung sagt nur, dass er mal vorwärts und mal rückwärts laufen soll. Was er da macht, das soll sich wohl jeder selber ausmahlen??

Was genau soll in der Kiste ablaufen? Sehr genau!!
Für was sollen die beiden 10 Ohm Potis sein??

Es gibt einige Gruppen und Universitäten die in Moment solche Geräte bauen und mehr Ahnung haben.

Andere sind da schon viel weiter:

Braucht immer noch eine Zulassung und wenn man in einem Forum nachfragen muss wie sowas geht wäre ich da skeptisch

Serenifly:
Braucht immer noch eine Zulassung und wenn man in einem Forum nachfragen muss wie sowas geht wäre ich da skeptisch

Dann möchte ich auch nicht auf das Gerät angewiesen sein.

Gruß Tommy

Hi

Dein Vorhaben in Ehren, aber meines Wissen DARF - zumindest ein AVR - NICHT eingesetzt werden, wenn von Diesem Gefahren für Leib und Leben ausgehen.
Also Der darf weder die Bremsen Deines KFZ steuern, noch Deinen Herzschrittmacher.

Sollten AVRs doch für sicherheitsrelevante Dinge verwendet werden dürfen - ich sehe hier bis jetzt nur eine 08/15 Schritt-Steuerung mit einstellbarer Geschwindigkeit und Pausenzeiten.
Böse Zungen würden dafür einen NE556 vorschlagen.

Lasse mich gerne belehren - mir wäre Es aber deutlich unangenehm, wenn wegen meiner Blödheit irgendwo Einer verreckt, weil mein Arduino gerade doch nicht so ganz Das macht, was ich wollte, sondern eher, was ich geschrieben habe.
Die dagegen aufzurechnen, wo der Arduino doch funktioniert hat, sollte man mit den Hinterbliebenen durch diskutieren.

MfG

Edit
Habe weiter Befürchtung, daß Schritte verloren gehen können - spätestens dann wäre 'Polen offen'.
Wenn hier die Endschalter ins Spiel kommen - dann kann ich Das auch per DC-Motor und PWM antreiben.
Am Einfachsten wäre wohl ein Exzenter-Antrieb, Der den Beutel periodisch drückt - per PWM in der Geschwindigkeit übelst einfach einzustellen, über externen Sensor (pro Umdrehung 1 Kontakt) in der Geschwindigkeit regelbar.

OK ich gebe es an dieser Stelle auf und mache es selbst

Danke

Folgendes Verhalten benötige ich:

Nach dem Anschalten
-Stepper dreht sich langsam IM Uhrzeigersinn bis der Enschalter kommt und setzt dort 0.
(Referenzpunkt)

-Stepper dreht sich mit über POTI einstellbarer Geschwindigkeit GEGEN den Uhrzeigersinn.
-Nach erreichen des definierten Fahrwegs kurze Wartezeit von 0.5 Senkunden.
-Stepper dreht sich IM Uhrzeigersinn die gleiche Strecke zurück und wartet über Poti einstellbar die Zeit X bevor er wieder von vorne anfängt.

Das ist ja kein Beatmungsgerät, sondern Software, die einen Stepper zyklische Bewegungen ausführen lässt. Dass kein Arduino jemals eine Zulassung als zentrale Steuereinheit eines Beatmungsgeräts / bemannten Flugzeugs / Atomkraftwerks erhalten wird, steht außer Diskussion.

Der Beschreibung fehlt noch:

  • wofür wird der Referenzpunkt gebraucht? ( Hinweg = Schritt-Zahl, Rückweg bis Referenzpunkt ?)
  • Wie wird der "definierte Fahrweg" definiert?
  • gleiche Geschwindigkeit hin/zurück?
  • Wird tatsächlich nur 1 Endschalter gebraucht ( + Spannungsversorgung Ein/Aus ) ?

Natürlich machst du das selbst. Kannst es gerne zeigen, sowohl bei Problemen wie auch ohne...

kryptoo:
OK ich gebe es an dieser Stelle auf und mache es selbst

Danke

Dann viel Erfolg.
Wenn du die Zulassung hast, kannst du ja gern nochmal posten.

michael_x:
Das ist ja kein Beatmungsgerät, sondern Software, die einen Stepper zyklische Bewegungen ausführen lässt. Dass kein Arduino jemals eine Zulassung als zentrale Steuereinheit eines Beatmungsgeräts / bemannten Flugzeugs / Atomkraftwerks erhalten wird, steht außer Diskussion.

Der Beschreibung fehlt noch:

  • wofür wird der Referenzpunkt gebraucht? ( Hinweg = Schritt-Zahl, Rückweg bis Referenzpunkt ?)
  • Wie wird der "definierte Fahrweg" definiert?
  • gleiche Geschwindigkeit hin/zurück?
  • Wird tatsächlich nur 1 Endschalter gebraucht ( + Spannungsversorgung Ein/Aus ) ?

Natürlich machst du das selbst. Kannst es gerne zeigen, sowohl bei Problemen wie auch ohne...

OK ich schreibe es mal drastisch.

TOT durch ersticken
Oder am Leben erhalten durch ein Arduino welches in meinem 3d Drucker seit Jahren nie ein Ausfall hatte.

Wir reden hier von einer AUSNAHMESITUATION.

Da fragt niemand nach zulassen. Nur nach überleben oder nicht.

Kein Selbst gedrucktes Gerät wir jemals eine Zulassung bekommen. Auch nicht die von den Unis

Aber ich wollte hier eigentlich nicht diskutieren.

Schade das keiner Bock hat zu helfen.
Dann gucken wir halt alle zu wie Menschen verrecken.

kryptoo:
Schade das keiner Bock hat zu helfen.
Dann gucken wir halt alle zu wie Menschen verrecken.

Hör' auf, hier mangelnde Hilfsbereitschaft zu unterstellen. Ich warte immer noch auf ein Bild der Hardware, die Du angeblich fertig hast.

Gruß

Gregor

Hi

Ich will mir aber echt nur ungern von Einem helfen lassen, Der nicht Mal eine 08/15-Schleife selber zusammen bekommt.
Mag ja sein, daß Du der Master der Mechanik bist - dann aber gib doch bitte den Teil der Elektronik an Leute, Die sich damit auskennen!
Oder sollen wir den Leuten zugucken, Die durch Dein Programm verrecken?
Oder ist Das dann nicht Dein Programm, sondern eher Unseres, weil Wir Das ja für Dich entwickeln durften?

Wie geschrieben - die 'Elektronik' kann ein schnöder DC-Motor werden (Scheibenwischer-Motor - Der hat sogar schon ein Ärmchen zum Drücken) - und einen 08/15-DC-Steller wird Sich auch bei Conrad/Reichelt/und Co finden lassen - Alles wesentlich besser, als ein µC, Der viel viel komplizierter aufgebaut ist und wegen jedem Mückenfurz ausfallen kann.
Der Wischer-Motor ist 'Atomwaffenfest' - beim Arduino reicht ein An-niesen - wenn's blöd läuft.

MfG

Ich hab doch extra gesagt das ich mich mit der Programmierung nicht auskenne und deshalb Hilfe suche.

Anscheinend ist es aber wichtiger auf Zulassungen zu warten als den Arzt entscheiden zu lassen.
Oder Angst vor dem Anwalt zu haben.

Wo sind wir denn hin gekommen? Wenn alle nur noch diskutieren und keiner mehr sich traut etwas zu unternehmen.

Ich unterstelle auch niemanden das er nicht Hilfsbereit ist.

Ich stelle nur fest das es falsch war hier zu fragen.

Deshalb danke an alle und hiermit beende ich das Thema!

kryptoo:
Schade das keiner Bock hat zu helfen.
Dann gucken wir halt alle zu wie Menschen verrecken.

Das ist eine maß- und haltlose Unterstellung, die Du selbst schon widerlegt hast, in dem dein Beitrag die #13 trägt.

Für den Fall das es Dir nicht gefällt das Bedenken bestehen, wie Du das angehst, dann löse auf.
Von wem sprichst Du, wenn Du wir meinst?

Ich möchte nicht, das irgend jemand in meinem Namen spricht. Auch Du nicht!

Hier gibt es sehr viele kluge Köpfe. Die beantworten gerne und mit viel Einsatz neben dem was man sonst Arbeitstag nennt, Fragen. Da gibt es sicher den einen oder anderen, der sich nicht nur an einem systemrelevanten Arbeitsplatz widerfindet, sondern an vorderster Front und in gesundheispolitischer kritischer Infrastruktur tätig ist.

Ansonsten verweise ich auf Emergency Response: Covid-19 Projects - Arduino Forum das passende Board.

Lieber Admin,

ich bitte um Löschung des Themas.

Danke schön.

Wieso das denn?

Jeder Thread ist für irgendwas gut!
Und sei es auch nur als abschreckendes Beispiel.