制御理論はスレ違いだと何回言っても理解できない人がいるようです
理論を弄るのはコーダの領分じゃないからな。
制御理論を制御系に応用する話ならこのスレでいいけどね
速応性は、目標にどれだけ早く近づくか。
たとえば、毎サンプル、目標までの距離が判っているとする。
目標までのその差をどんんだけ詰めるかってのが速応性。
速応性を上げると、当然発振し易くなるだろ?
ゲイン余裕 とか 位相余裕ってのは、
これ以上いくと発振するところまでの余裕って事だ。
逆は必ずしも真ならずというけど、まあ、余裕持たせるには、
ゆっくり応答するしかないわけ
本来なら両方を兼ね備えるべきなんだろうけど、理解できないLEDチカチカな人が必死なんですよ
誰が必死なの?
このスレの住人がLEDチカチカだけであってほしい人
とりあえずトラ技のLED調光プログラム借りてモータの回転数変えられるようになりました
そして金手間掛けずにマブチモータから回転数検出できそうな方法ない?
手持ちの機械パーツはほぼ0
そうだな。
まず電源をモータの定格より、少し高い電圧にする
代わりに、PWM方式でスイッチングする。
スイッチングオフ期間中の電圧を読み出せば、回転数に比例している筈だ
961 :
デフォルトの名無しさん:2007/09/27(木) 03:17:55
パルスモータの4相励磁はちゃんとできてるんですが、モータがすごく熱い。触れないほど。
こんなに熱くていいのかな、と心配。 もしかして、相の変わり目のエッジは「同時」じゃ
いけない?・・・(前の相が立ち下がってほんの僅か空けて次の相が立ち上がる、とか)
電流ながしっぱなしじゃないの
4相励磁って ことは、 コイルAとBがあると
Aを切るのとBを入れるわけで、
これは同時にやってもいい。
2相だと同じコイルを反転するんで、考えないといけないけどね。
熱くなるのは停止中に電流を流し続けているからだろう。
モータを回してる間はオンオフするからコイルのL成分が効くからあんまり電流は流れない。
パルスモータで表面温度100度くらいまでなら
許容範囲内
965 :
961:2007/09/27(木) 14:23:13
う〜ん、いちおう論理の正負は確認して、Hで励磁、停止時はLだから流れてない
はずなんですが・・・
>>964 たしかに、100度は行ってないです。これで許容範囲なのか。
あとはトルクの許す限り、電流下げるしかない
電流をコンパレータで検出して比較するか
停止してる時にソフトでパタパタさせるか
流れてないはずっていうくらいならテスタでも挟んで確認しれ
まだ試作か何かだろ
969 :
961:2007/09/28(金) 08:23:03
あい、それはハードの人にやってもらいます。
+電源
○---+-------->コモン
|
_
△ D1
|
+------+-->A
| _
○SW1 △ D2
○---+------+
GND
たとえば、SW1でAを切っても 電流は流れ続けようとする
D1 に流す設計と
D1A' (Aの反対側) のD2の部分に流す設計の2通りある
D1に流す設計だと、電流は長時間流れ続ける事になるので
4相のつもりが波形は4−2相だったりするよ
D1 に流す設計と
D1を無くしてA' (Aの反対側) のD2の部分に流す設計の2通りある
その D1 に流す設計は間違いで、 そういう設計だと発熱しまくる
組み込みでCIFSとかSMBの実装って無理?sambaじゃなくてね。
検索しても独自に開発実装してる人いないみたいだし。
やっぱり難易度たかいっすかね。
SMBは昔、ネットワークのスレで作ろうとしてた奴がいたな
頭のおかしい奴だった
オレオレ
>>974 マイクロソフトのプロトコルは、作っても作っても新しいプロトコルにするし、Win95系ではポート関連のバグがあるし、ホスト名はお得意の独自仕様【ハイブリッド】タイプだし、Win95系の共有名は最大12バイトだけどWin2k系はその制限は無いし、
WinXPには妙なセキュリティが入ってるし、これを組み込みで作れというのなら、辞表を書いてもっと条件がよくてアホな会社に移るね。
やったらそれはそれで功績だけど、俺はもっと合理的な仕事をしたいね。
>>977 合理的な仕事なんてもうこの世には無いだろ
CIFSの資料見て、地道にやればいいんじゃないの?
腕のないほら吹きは、人数かければ、動くと思ってるみたいだけど...
乙
983 :
デフォルトの名無しさん:2007/10/05(金) 00:02:16
1秒毎に実行されるAという関数があります。n秒後にA関数の中で別の関数を実行したいのですが、
A関数の中で、このn秒というのをどのようにカウントすればよいのでしょうか。
(言語はCです。)
984 :
983:2007/10/05(金) 00:05:35
すいません、ちょっと訂正します。よろしくお願いします。
1秒毎に実行されるAという関数があります。n秒後にA関数の中で別の関数を実行したいのですが、
A関数の中で、このn秒というのをカウントしたい場合はどのようにすればよいのでしょうか。
(言語はCです。)
いや環境は関係なかったな
カウンタの変数用意するだけだべ
987 :
983:2007/10/05(金) 01:08:54
>>985 >>986 ありがとうございました。A関数内でカウンタ変数を宣言していた為、処理できませんでした。
外部変数でカウンタ変数を宣言し、A関数内でカウンタ++で解決しました。
C言語を勉強しはじめたばかりで、これまで外部変数を使う機会がなかったので、
まったく気付きませんでした。申し訳ございません。
外部変数使うべきじゃないな
>>988の言うとおりstaticにしろ
volatileも付けとけ
でもstaticの変数はリンクリストに出ないのでアドレスをつかみずらい。
アドレスをつかめると何かいいことがあるのですか?
# 普通はシンボライズされるけどね。
デバックのときメモリ表示できないです。staticだとZ001とか勝手な名前が内部的に付くが
globalシンボルにならないからリンクリストに出ない。
リンカによってはだせるよ。ICEとかで参照できるかどうかは別の問題。
みんなもCOFFファイルを自分で展開してツール作ったりするでそ?
その時にstaticで定義してたりすると、チョット面倒だと思ったりするよね。
binutilsはcoffは切り捨てたみたいだね。なんでだろ?
H8なんで ELFだな
f
t
p
1000ならジュースでも飲むか
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。