Sie sind nicht angemeldet.

Anzeigen

**Wir werden in den kommenden Tagen einen Umzug auf einen neuen Server durchführen. Im Rahmen dieser Maßnahme wird das Forum ca. 1 Stunde nicht erreichbar sein.** nslu2-info.de ist ein privates Projekt von mir, welches jeden Monat aus eigener Tasche finanziert wird. Mit einer freiwilligen Spende wird der Erhalt und der weitere Ausbau dieses Forums unterstützt. Um mich beim Erhalt des Forums zu unterstützen, kannst Du entweder via Flattr oder Paypal spenden. Ich bedanke mich schon jetzt bei allen Unterstützern.

Lieber Besucher, herzlich willkommen bei: Die NSLU2 Community****wenns ums speichern und streamen geht****. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

gznw

Fortgeschrittener

  • »gznw« ist der Autor dieses Themas

Beiträge: 158

Firmwareversion / your current Firmware: Unslung 3.18

  • Nachricht senden

1

01.10.2008, 20:27

skript zur automatischen Dateierstellung

Hallo!
So, nachdem es nun mit dem Servocontroller klappt, wollte ich für jeden Bafehl ein kleines Skript erstellen, in dem die anzufahrende Position festgelegt ist. Somit wird vermieden, daß durch einen Programmierfehler ein Wert außerhalb des möglichen Bereichs azufahren versucht wird, was das Servogetriebe zerstören würde. Der Nachteil ist nun, daß ich für jeden Servo 110 Skripte erstellen müsste. Da ich 3 Servos angeschlossen habe, wäre der Tippauswand enorm und nicht zu realisieren.
Nun habe ich mir gedacht, könnte man vielleicht ein Skript schreiben, das automatisch diese 330 Dateien erstellt. Ich dachte erst an eine for-Schleife , in der bei jedem Durchgang 3 Dateien erstellt werden. z.B:
erster Durchlauf:
Datei SA001 erstellen mit Inhalt ......SA001....
Datei SB001 erstellen mit Inhalt ......SB001....
Datei SC001 erstellen mit Inhalt ......SC001....

Im Prinzip sollte das ja nicht das große Problem sein, oder? Aber ich komme da einfach nicht zurecht mit.
Ich habe da schon ein paar Sachen ausprobiert, aber das wird alles nichts.. Habt Ihr eine Idee?

Anzeigen

2

02.10.2008, 18:54

AW: skript zur automatischen Dateierstellung

Bin nicht sicher, ob ich die Aufgabe richtig verstanden habe und welches Betriebssystem du verwendest, aber unter XP legt folgende Batch 330 Dateien an, die die von dir vorgegebenen Dateinamen jeweils als Inhalt haben. Hilft das weiter ?

@echo off
:: Dateien 1 bis 9 (einstellig)
FOR /L %%i IN (1,1,9) DO (
echo SA00%%i > SA00%%i
echo SB00%%i > SB00%%i
echo SC00%%i > SC00%%i
)
:: Dateien 10 bis 99 (zweistellig)
FOR /L %%i IN (10,1,99) DO (
echo SA0%%i > SA0%%i
echo SB0%%i > SB0%%i
echo SC0%%i > SC0%%i
)
:: Dateien 100 bis 110 (dreistellig)
FOR /L %%i IN (100,1,110) DO (
echo SA%%i > SA%%i
echo SB%%i > SB%%i
echo SC%%i > SC%%i
)

Anzeigen

gznw

Fortgeschrittener

  • »gznw« ist der Autor dieses Themas

Beiträge: 158

Firmwareversion / your current Firmware: Unslung 3.18

  • Nachricht senden

3

02.10.2008, 21:15

AW: skript zur automatischen Dateierstellung

[LEFT]Hallo!

Ja, genau an sowas hatte ich gedacht.. Kann ich das auch auf der nslu (unslung) ausführen? Oder wie funktioniert das genau unter XP? Aber das
ist genau das was ich meinte
Danke schon mal
[/LEFT]

4

02.10.2008, 21:52

AW: skript zur automatischen Dateierstellung

Hallo,

das hier kannst du auch unter unslung ausführen:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/sh

typeset -i zahl=0
while [ $zahl -lt 10 ]
do
    echo "... SA00$zahl..." > /test/SA00$zahl
    echo "....SB00$zahl..." > /test/SB00$zahl
    echo "....SC00$zahl..." > /test/SC00$zahl
    zahl+=1
done

while [ $zahl -lt 100 ]
do
    echo "... SA0$zahl..." > /test/SA0$zahl
    echo "....SB0$zahl..." > /test/SB0$zahl
    echo "....SC0$zahl..." > /test/SC0$zahl
    zahl+=1

while [ $zahl -lt 111 ]
do
    echo "... SA$zahl..." > /test/SA$zahl
    echo "....SB$zahl..." > /test/SB$zahl
    echo "....SC$zahl..." > /test/SC$zahl
    zahl+=1
done



Mir ist nur nicht ganz klar wofür du so viele Dateien brauchst. Sollte nicht eine if Abfrage zur Überprüfung ausreichen wie :

if (( $wert > 0 && $wert < 111 ))
then
......(wert ok )
else
..... (wert nicht ok )
fi

Gruß Stone

gznw

Fortgeschrittener

  • »gznw« ist der Autor dieses Themas

Beiträge: 158

Firmwareversion / your current Firmware: Unslung 3.18

  • Nachricht senden

5

02.10.2008, 22:19

AW: skript zur automatischen Dateierstellung

Hallo!
Super!!
Ja, ich gebe zu, die Methode ist irgendwie ziemlich dreckig, aber ich wollte das 100%ig vermeiden, daß da ein Servogetrieb beschädigt wird. Und weil ich mit php noch sehr unerfahren bin, möchte ich so vermeiden, daß durch php direkt ein Befehl an den Servocontroller gesendet wird. Aber wo Du das so schreibst.. Es muß ja eigentlich wirklich sicher genug sein mit der if-Abfrage...
Also vielleicht sollte ich es gleich vernünftig machen.. Da muß ich mich nun mal da reinfuchsen wie ich das am besten realisieren kann.. Ich habe bisher wenig php-Erfahrung.. Also das Vorhaben heißt ja: Webcam drehen und in der Höhe verstellen und das ganze auf einer Weboberfläche. Zusätzlich habe ich an der Kamera noch ein Objektiv montiert und ein 3. Servo soll dann die vordere Linse verstellen, damit man nahe Objekte auch scharf sieht.. Das Objektiv ist dazu da, um einen 1km entfernten Flughafen beobachten zu können.
Nun muß ich dann mal schaun, wie ich das mit php realisiere, also 3 Eingabefelder, dessen Werte dann auf Zulässigkeit überprüft werden und anschließend soll der Befehl an die serielle Schnittstelle gesendet werden. Danke für den Hinweis! Das ist echt die beste Methode, statt der 300Dateien.. Aber Dein Skript habe ich trotzdem mal abgespeichert, falls ich sowas ähnliches noch einmal benötige..
Dann kram ich mal meine php-Bücher raus...

6

02.10.2008, 23:07

AW: skript zur automatischen Dateierstellung

Hi,

gern geschehen. :)

Wenn du so weit bist, melde dich mal. Würde mir das gerne mal anschauen :D

Momentan wüsste ich auch nicht, wie du mit PHP die Servos ansteuert willst außer mit einem "exec" Kommando. Müsste mich auch mal wieder in PHP einarbeiten

Gruß Stone

gznw

Fortgeschrittener

  • »gznw« ist der Autor dieses Themas

Beiträge: 158

Firmwareversion / your current Firmware: Unslung 3.18

  • Nachricht senden

7

03.10.2008, 01:13

AW: skript zur automatischen Dateierstellung

ja, genau daran habe ich auch gedacht.. Da suche ich aber schon seit einer ganzen Weile nach einer Lösung..
Gedacht war nun:
Mit einem Formular die Werte $x, $y und $l (für Linse) abfragen und mit exec ein skript ausführen, an das die Werte übergeben werden.. Dort soll dann einmal die Untersuchung auf zulässige Werte erfolgen und dann so in der Art:

echo "SA$x" | socat........
echo "SB$y" | socat........
echo "SC$l" | socat........

ok, die Umsetzung ist für mich gerade sehr schwer weil ich eben wenig Erfahrung damit habe. Aber es muß ja möglich sein.

Social Bookmarks