2015年7月4日土曜日

systeminfoで、リモートで物理メモリの合計をゲット

工場内にある2000台近くのPCの実搭載メモリの調査が必要になり、systeminfoコマンドを使って調査を開始しました。

コマンドプロンプトで、下記のコマンドを発行すれば取得できます。
C:\>systeminfo /s HostName | find “物理メモリの合計”

しかし、このコマンドを2000回も繰り返すのは嫌なので、取りあえずHostNameのリストを読み込んで上記のコマンドをループするバッチを作って実行しましたが、そのままではレポートに出来ないので、VBscriptで作ることにしました。

Set WshShell = CreateObject("WScript.Shell")
Set oExec = WshShell.Exec("systeminfo /s " & strHostName )
Do While oExec.Status = 0
WScript.Sleep 100
Loop
WScript.echo oExec.StdOut.ReadAll

こんな感じで・・・

ところが、WshShell.Execは実行の終了を待たないので、oExec.Statusが終了を示す1になるまで待たせているのですが、なんといつまでたっても変化しません。

PowerShellのワンライナーを起動してみましたが、コマンドの戻り値が直接読めないので却下

WshShell.Exec(powershell -NoProfile -ExecutionPolicy Unrestricted -command ""& { Get-WmiObject -Class Win32_PhysicalMemory -computername "
strLine = strLine & objParm(0) & """}")

それでは、ということでVBscriptからWmiを呼び出してやることで対応しました。

Set oLocator = WScript.CreateObject("WbemScripting.SWbemLocator")
Set oService = oLocator.ConnectServer(objParm(0))

Set oClassSet = oService.ExecQuery("Select * From Win32_ComputerSystem")
For Each oClass In oClassSet
lRet = oClass.TotalPhysicalMemory
strHost = oClass.DNSHostName
Next

まあ、こんなことせずに System Center Configuration Managerで各クライアントのハード情報のレポートを出せば良いのですが、リアルタイムでは無いと思うので、仕方ないですね

それと、systeminfoはたくさんの情報を取ってくるので時間がかかりますが、wmiでハード情報だけを取ってくると4倍高速に取得出来る様になります。

2015年3月29日日曜日

ドアロック(サムターン)電動化装置

お義母さんが腰痛で移動が不自由になり、介護サービスを受ける際に部屋への出入りが問題になりました。

居宅介護サービスを受けるためには、支援者やヘルパーさんに部屋に入って来てもらわないと、サービスが受けられないわけですが、身体が不自由だと、ドアのロックを解除するのも大変です。

ヘルパーさんにカギを預かって貰えば良いのですが、プライバシー保護や盗難防止などの為、利用者のカギを預かることが出来ない事業者も多いようですね。

ドアロックが電動化されていれば、ワイヤレスリモコンなどと接続して、ベッドから開錠操作できますが、アパートやマンションなどの借家では、そのような改造は行えません。

そこで、下記の様なドアロックのサムターンをモーターで回す機構を取り付ける方法をとることにしました。(市販の装置もあるのですが、ここのドアは対応していませんでした)

総組立

ラジコン用のサーボモーターをマイコンで制御して、ドアのサムターンを回します。さらに、ベッドから操作できるように市販のワイヤレスチャイムから信号を取り出して、マイコンに接続します。

ワイヤレスチャイムの釦を押すと、ドアロックを20秒間解除して、その後ドアをロックして、その10秒後にサーボを切る(カギでの操作に対応するため)様にしています。なお、この時間は仮の設定で、取り付けてから相談して決めるつもりです。

No

品名

単価

備考

1

ワイヤレスチャイム

1

3,000

 

2

RCマイクロサーボ

1

1,000

 

3

マイコン基板

1

3,000

 

4

フレーム

1

2,000

アクリル

5

ネジ・電線ほか

1

1,000

 
   

10,000

 

設計・組立てを考えると、3万円位頂かないと割に合わないですが、今回は商売ではないので、材料費のみです。

今度、お義母さんの所へ行った時に取り付けて、動作を確認しようと思います。

【市販の電動サムターン】