SSブログ
前の10件 | -

Raspberry Pi 3 Model B + Camera V2.1 docker クロス開発 [プログラミング]

前回は、ラズパイでdockerを動作させるところまで記録した。今回は、Windowsでラズパイのdockerコンテナを開発することに挑戦する。



肝はこれだと思う。

docker buildx build . -t pxosdk:0.1 --platform linux/arm64 -o type=docker,dest=- > myimage.tar

しかし、このtarをラズパイにコピーし、docker loadしてもエラーが起きてしまう。

 $ docker load < myimage.tar
Error processing tar file(exit status 1): archive/tar: invalid tar header

dest=-として標準出力にtarの中身を吐き出しているようだが、windowsでは標準エラーも同じところに出力してしまうので、tarにゴミが混じると推測した。そこで、destに直接ファイル名を指定することで解決した。

>docker buildx build . -t hello_rp:0.1 --platform linux/arm64 -o type=docker,dest=hello_rp.tar
[+] Building 2.8s (8/8) FINISHED                                                                                                                 docker-container:mybuilder
 => [internal] load build definition from Dockerfile                                                                                                                   0.0s
 => => transferring dockerfile: 101B                                                                                                                                   0.0s
 => [internal] load metadata for docker.io/library/python:3.9-slim-buster                                                                                              2.3s
 => [auth] library/python:pull token for registry-1.docker.io                                                                                                          0.0s
 => [internal] load .dockerignore                                                                                                                                      0.0s
 => => transferring context: 2B                                                                                                                                        0.0s
 => [internal] load build context                                                                                                                                      0.0s
 => => transferring context: 25B                                                                                                                                       0.0s
 => [1/2] FROM docker.io/library/python:3.9-slim-buster@sha256:320a7a4250aba4249f458872adecf92eea88dc6abd2d76dc5c0f01cac9b53990                                        0.0s
 => => resolve docker.io/library/python:3.9-slim-buster@sha256:320a7a4250aba4249f458872adecf92eea88dc6abd2d76dc5c0f01cac9b53990                                        0.0s
 => CACHED [2/2] COPY a.py 1.py                                                                                                                                        0.0s
 => exporting to docker image format                                                                                                                                   0.4s
 => => exporting layers                                                                                                                                                0.0s
 => => exporting manifest sha256:17d61a2254f3fdfc7419608ac1a60a7e3b67c7a91e98ea6cc696a8d36bf5e2de                                                                      0.0s
 => => exporting config sha256:1fc37e61be263a22d171472e011a7a9e5d92625f12ae3b94a52c3052dcbeec0a                                                                        0.0s
 => => sending tarball

ラズパイに転送して、実行できることを確認した。


$ docker load < hello_rp.tar
Loaded image: hello_rp:0.1
$ docker run hello_rp:0.1
Hello, world!

ちなみに、おなじtarをwindowsにloadしても実行できた。

>docker load < hello_rp.tar
87bc36f72cf5: Loading layer [==================================================>]  25.92MB/25.92MB
dcbd2252343f: Loading layer [==================================================>]  2.647MB/2.647MB
6e4f4f2a1b40: Loading layer [==================================================>]  11.13MB/11.13MB
cd49bcee103a: Loading layer [==================================================>]     242B/242B
e563f3050990: Loading layer [==================================================>]  3.136MB/3.136MB
d107005ea74e: Loading layer [==================================================>]     128B/128B
Loaded image: hello_rp:0.1
>docker run hello_rp:0.1
WARNING: The requested image's platform (linux/arm64) does not match the detected host platform (linux/amd64/v3) and no specific platform was requested
Hello, world!!
WARNINGが出ているので、ラズパイ用であることは間違いなさそうだが、動くのはなぜだろう?
pythonスクリプトが動いたので、次回は外部ライブラリが動くことを目指す。

nice!(0)  コメント(0) 

Raspberry Pi 3 Model B + Camera V2.1 Debian 1:6.1.54-1+rpt2 (2023-10-05) [プログラミング]

先週起動ディスクと作るところから始めたラズパイだが、さっき起動ディスクを作り直したら、Camera V2.1がデフォルトで使えるようになってて驚いた。

rpi_bookworm.png

OSバージョンはこちら。

 $ uname -a
Linux raspberrypi 6.1.0-rpi4-rpi-v8 #1 SMP PREEMPT Debian 1:6.1.54-1+rpt2 (2023-10-05) aarch64 GNU/Linux

ここに書いた、raspi-configや/boot/config.txtの変更はもう必要ない。静止画もすぐ撮れる。

~ $ libcamera-still -o test.jpg
Preview window unavailable
[0:04:25.367545312] [1453]  INFO Camera camera_manager.cpp:284 libcamera v0.1.0+52-a858d20b
[0:04:25.497665380] [1456]  WARN RPiSdn sdn.cpp:39 Using legacy SDN tuning - please consider moving SDN inside rpi.denoise
[0:04:25.501860671] [1456]  WARN RPI vc4.cpp:333 Mismatch between Unicam and CamHelper for embedded data usage!
[0:04:25.503678839] [1456]  INFO RPI vc4.cpp:387 Registered camera /base/soc/i2c0mux/i2c@1/imx219@10 to Unicam device /dev/media3 and ISP device /dev/media0
Stream configuration adjusted
[0:04:25.505581590] [1453]  INFO Camera camera.cpp:1213 configuring streams: (0) 1640x1232-YUV420
[0:04:25.506482627] [1456]  INFO RPI vc4.cpp:549 Sensor: /base/soc/i2c0mux/i2c@1/imx219@10 - Selected sensor format: 1640x1232-SBGGR10_1X10 - Selected unicam format: 1640x1232-pBAA
#0 (0.00 fps) exp 33251.00 ag 8.00 dg 1.00
#1 (30.01 fps) exp 33251.00 ag 8.00 dg 1.00
#2 (30.00 fps) exp 33251.00 ag 8.00 dg 1.00
...
#141 (30.01 fps) exp 33251.00 ag 8.00 dg 1.00
#142 (30.01 fps) exp 33251.00 ag 8.00 dg 1.00
[0:04:30.650220654] [1453]  INFO Camera camera.cpp:1213 configuring streams: (0) 3280x2464-YUV420 (1) 3280x2464-SBGGR10_CSI2P
[0:04:30.662149345] [1456]  INFO RPI vc4.cpp:549 Sensor: /base/soc/i2c0mux/i2c@1/imx219@10 - Selected sensor format: 3280x2464-SBGGR10_1X10 - Selected unicam format: 3280x2464-pBAA
Still capture image received

raspi-configのInterface Optionから"I1 Legacy Camera Enable/disable legacy camera support"というメニューすら消えている。

タグ:ラズパイ
nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

Raspberry Pi 3 Model B + Camera V2.1 docker [プログラミング]

前回は、ラズパイカメラのストリーミングができるようにしたところまでを記録した。

そのpython scriptをdockerで動作させることに挑戦することにした。


https://tech-lab.sios.jp/archives/27798 を参考に、ラズパイにdockerをインストールした。


sudo apt install docker.io

DockerHubからnginxのイメージをダウンロードして実行した。

docker run -d --name=nginx -p 8080:80 ngin

普通に動いているようだ。(注:参考サイトのようにnameの前のハイフンが一つだと動かない)

つぎに、pythonスクリプトを実行してみる。


フォルダを作成し、2つのファイルを保存した。

a.py

print("Hello, world")

Dockerfile

FROM python:3.9-slim-buster
COPY a.py 1.py
CMD python 1.py

ビルドして実行。

 $ docker build -t py-hello .
Sending build context to Docker daemon  3.072kB
Step 1/3 : FROM python:3.9-slim-buster
 ---> bb1bad240fdf
Step 2/3 : COPY a.py 1.py
 ---> Using cache
 ---> 15813e110ccb
Step 3/3 : CMD python 1.py
 ---> Using cache
 ---> b3e25f80d097
Successfully built b3e25f80d097
Successfully tagged py-hello:latest
$ docker images
REPOSITORY    TAG               IMAGE ID       CREATED          SIZE
py-hello      latest            b3e25f80d097   34 seconds ago   110MB
$ docker run py-hello
Hello, world


ラズパイ上で開発するは、時間がかかりそうなので、次回はwindowsでラズパイのdockerコンテナをビルドすることに挑戦する。


nice!(0)  コメント(0) 

Raspberry Pi 3 Model B + Camera V2.1 picamera2 mjpeg_server.py 成功 [プログラミング]

前回は、web.pyを使って静止画をリモートから見られるようにしたかったが失敗したところまで記録した。原因を解明しようとpicamera2のサイトを見ていたところ、当初やりたかったことを実現してくれそうなスクリプトを見つけたので、まずはそれを実行することにした。


mjpeg_server.py

 $ python webpy/mjpeg_server.py
[2:15:51.949590188] [2588]  INFO Camera camera_manager.cpp:297 libcamera v0.0.5+83-bde9b04f
[2:15:52.014895340] [2589]  WARN RPI vc4.cpp:383 Mismatch between Unicam and CamHelper for embedded data usage!
[2:15:52.016671130] [2589]  INFO RPI vc4.cpp:437 Registered camera /base/soc/i2c0mux/i2c@1/imx219@10 to Unicam device /dev/media3 and ISP device /dev/media1
[2:15:52.016786078] [2589]  INFO RPI pipeline_base.cpp:1101 Using configuration file '/usr/share/libcamera/pipeline/rpi/vc4/rpi_apps.yaml'
[2:15:52.031080000] [2588]  INFO Camera camera.cpp:1033 configuring streams: (0) 640x480-XBGR8888 (1) 640x480-SBGGR10_CSI2P
[2:15:52.032129484] [2589]  INFO RPI vc4.cpp:565 Sensor: /base/soc/i2c0mux/i2c@1/imx219@10 - Selected sensor format: 640x480-SBGGR10_1X10 - Selected unicam format: 640x480-pBAA
192.168.10.23 - - [09/Oct/2023 14:12:49] "GET /index.html HTTP/1.1" 200 -
192.168.10.23 - - [09/Oct/2023 14:12:49] "GET /stream.mjpg HTTP/1.1" 200 -
ただ実行するだけで、ストリーミング配信出来ている。
負荷もそれほど高くないようだ。
 $ vmstat 1 5
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 406268  18964 282736    0    0     8     1  902   91  1  0 99  0  0
 1  0      0 405316  18964 282736    0    0     0     0 12203 4666 18  4 78  0  0
 1  0      0 405092  18964 282736    0    0     0     0 11973 4453 20  4 77  0  0
 1  0      0 405092  18964 282736    0    0     0     0 12283 4724 17  4 79  0  0
 1  0      0 405092  18964 282736    0    0     0     0 12056 4412 16  5 79  0  0

次回から、dockerで動作させることに挑戦する。

nice!(0)  コメント(0) 

Raspberry Pi 3 Model B + Camera V2.1 picamera2 web.py 失敗 [プログラミング]

前回は、libcamera-stillで静止画が撮れるところまでを記録した。 次に、カメラで撮影した画像を、外から見られるようにしたくなった。動画として見られるとよいのだが、まずは静止画がみられることを目標にした。 まずは、pythonのpicamera2とwebpyで、あるurlにアクセスしたら静止画を撮ってそれを返すプログラムを作ることにした。 1. picamera2 このページを参考に環境を構築した。 https://github.com/raspberrypi/picamera2

  1. sudo apt install -y python3-pyqt5 python3-opengl
  2. sudo apt install -y python3-picamera2 --no-install-recommends

2. web.py

    1. pip install web.py==0.61
      • "==0.61"の意味はわかってない。
    2. app.py
      • import web


        import io


        import time


        from picamera2 import Picamera2




        urls = (


           "/",


           "index"


        )




        class index:


           def __init__(self):


             self.cam = Picamera2()


             self.capture_config = self.cam.create_still_configuration()


             self.cam.configure(self.cam.create_preview_configuration())


           def GET(self):


             self.cam.start()


             time.sleep(1)


             data = io.BytesIO()


             self.cam.capture_file(data, format='jpeg')


             self.cam.stop()


             return(data.getvalue())


             #image = open("/home/python/Pictures/camera.jpg", "rb").read()


             #return image




        if __name__ == '__main__':


           app = web.application(urls, globals())


           app.run()




        ファイルに保存してからそれを返すのではなく、メモリ中にjpgイメージを作ってそれをかえすことで、ディスクの寿命を延ばす作戦。
    1. 実行
    2. 最初のアクセスには、正しく静止画を返してくれたが、2回目のアクセスで落ちる。
        $ python app.py




        [1:43:46.506893147] [2163] INFO Camera camera_manager.cpp:297 libcamera v0.0.5+83-bde9b04f


        [1:43:46.598907128] [2180] WARN RPI vc4.cpp:383 Mismatch between Unicam and CamHelper for embedded data usage!


        [1:43:46.600689216] [2180] INFO RPI vc4.cpp:437 Registered camera /base/soc/i2c0mux/i2c@1/imx219@10 to Unicam device /dev/media3 and ISP device /dev/media1


        [1:43:46.600802029] [2180] INFO RPI pipeline_base.cpp:1101 Using configuration file '/usr/share/libcamera/pipeline/rpi/vc4/rpi_apps.yaml'


        [1:43:46.616782902] [2163] INFO Camera camera.cpp:1033 configuring streams: (0) 640x480-XBGR8888 (1) 640x480-SBGGR10_CSI2P


        [1:43:46.618274573] [2180] INFO RPI vc4.cpp:565 Sensor: /base/soc/i2c0mux/i2c@1/imx219@10 - Selected sensor format: 640x480-SBGGR10_1X10 - Selected unicam format: 640x480-pBAA


        192.168.10.23:56710 - - [09/Oct/2023 13:40:27] "HTTP/1.1 GET /" - 200 OK


        192.168.10.23:56710 - - [09/Oct/2023 13:40:27] "HTTP/1.1 GET /favicon.ico" - 404 Not Found


        [1:45:28.564968768] [2165] ERROR Camera camera.cpp:525 Camera in Configured state trying acquire() requiring state Available


        Camera __init__ sequence did not complete.


        Traceback (most recent call last):


        File "/usr/lib/python3/dist-packages/picamera2/picamera2.py", line 242, in __init__ self._open_camera() File "/usr/lib/python3/dist-packages/picamera2/picamera2.py", line 446, in _open_camera self.camera.acquire() RuntimeError: Failed to acquire camera: Device or resource busy




        During handling of the above exception, another exception occurred:




        Traceback (most recent call last):


        File "/home/python/.local/lib/python3.9/site-packages/web/application.py", line 280, in process


        return self.handle()


        File "/home/python/.local/lib/python3.9/site-packages/web/application.py", line 271, in handle


        return self._delegate(fn, self.fvars, args)


        File "/home/python/.local/lib/python3.9/site-packages/web/application.py", line 514, in _delegate


        return handle_class(cls)


        File "/home/python/.local/lib/python3.9/site-packages/web/application.py", line 491, in handle_class


        tocall = getattr(cls(), meth)


        File "/home/python/Documents/prog/webpy/app.py", line 13, in __init__


        self.cam = Picamera2()


        File "/usr/lib/python3/dist-packages/picamera2/picamera2.py", line 254, in __init__


        raise RuntimeError("Camera __init__ sequence did not complete.")


        RuntimeError: Camera __init__ sequence did not complete.




        192.168.10.23:56740 - - [09/Oct/2023 13:42:08] "HTTP/1.1 GET /" - 500 Internal Server Error

次回は、これの修正を試みる。

nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

Raspberry Pi 3 Model B + Camera V2.1 静止画撮影ができるまで [プログラミング]

昔買ったラズパイとカメラを引っ張り出してきて何かプログラミングを始めようと思い立った。 1. Raspberry Pi OS すでにアカウント名やパスワードを忘れてしまったので、ブートディスクを作り直した。

    1. ここからWindows用のRaspberry Pi Imagerをダウンロードしてインストールした。


    1. Raspberry Pi Imagerを起動して、SDカードに焼いた

rpi_imager.png

        OSは、64bitのBullseyeを選んだ。

      アカウント名とパスワード、WiFiのSSIDとパスフレーズ、sshをONに設定した。 WiFiは、"a"には対応していないようなので"g"で終わるSSIDを設定しなければならない。
    • 起動
      • マウスとキーボード、HDMIをラズパイにつなぎ、SDカードをさして、電源を入れると、GUIが見える。

2. カメラを使う 以前もカメラを使っていて、接続もそのままだったので、すぐに使えるかと思いlibcamera-stillを実行したところ、このエラーが出て失敗。

(2023/10/13 OSのアップデートにより、これらのエラーはなくなりました。こちらをご覧ください)

    ERROR: *** no cameras available ***

いろいろググってこれらを実施して写真が撮れるようになった。

    1. raspi-confg
      • "3 Interface Options"を選択する


        "I1 Legacy Camera Enable/disable legacy camera support"を選択する。"Would you like to enable legacy camera support?"へ"はい"と答える。"Legacy camera support is enabled."と表示される。
    1. /boot/config.txt
      • Camera V2.1を使うために、ファイルの最後にこれを追記して、再度リブート。


        dtoverlay=imx219


    1. libcamera-still -o test.jpg
      • sshでログインしたターミナルから実行したときの出力


Preview window unavailable
[0:15:02.332355278] [1078] INFO Camera camera_manager.cpp:297 libcamera v0.0.5+83-bde9b04f
[0:15:02.425273541] [1079] WARN RPI vc4.cpp:383 Mismatch between Unicam and CamHelper for embedded data usage!
[0:15:02.426994700] [1079] INFO RPI vc4.cpp:437 Registered camera /base/soc/i2c0mux/i2c@1/imx219@10 to Unicam device /dev/media3 and ISP device /dev/media1
[0:15:02.427104336] [1079] INFO RPI pipeline_base.cpp:1101 Using configuration file '/usr/share/libcamera/pipeline/rpi/vc4/rpi_apps.yaml'
[0:15:02.429126956] [1078] INFO Camera camera.cpp:1033 configuring streams: (0) 1640x1232-YUV420
[0:15:02.430171808] [1079] INFO RPI vc4.cpp:565 Sensor: /base/soc/i2c0mux/i2c@1/imx219@10 - Selected sensor format: 1640x1232-SBGGR10_1X10 - Selected unicam format: 1640x1232-pBAA
#0 (0.00 fps) exp 20963.00 ag 2.00 dg 1.35
#1 (30.00 fps) exp 28714.00 ag 2.00 dg 1.10
...
#142 (30.00 fps) exp 28336.00 ag 2.00 dg 1.00
[0:15:07.582503902] [1078] INFO Camera camera.cpp:1033 configuring streams: (0) 3280x2464-YUV420 (1) 3280x2464-SBGGR10_CSI2P [0:15:07.585346840] [1079] INFO RPI vc4.cpp:565 Sensor: /base/soc/i2c0mux/i2c@1/imx219@10 - Selected sensor format: 3280x2464-SBGGR10_1X10 - Selected unicam format: 3280x2464-pBAA
Still capture image received .


次回は、静止画をweb配信することに挑戦する。


Raspberry Pi 3【Model B+】スターターセット/アドバンス RASPi3P-ADV

Raspberry Pi 3【Model B+】スターターセット/アドバンス RASPi3P-ADV

  • 出版社/メーカー: 共立電子産業
  • メディア:




nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

新横浜発横浜着

前々からやりたいと思っていたJR一筆書き旅行を、お盆に実行してみた。
JRの首都圏路線図をwebで探し、今まで乗ったことのない路線が入るようなルートを考えてみた。そして、電車の乗り換え案内サイトを利用して、午後一から夕飯までに回れそうかを確かめてみたところ、このような結果を得た。 PCでOneNoteに記載して、スマホでも見られるようにしておく。
2022-08-17 203425.png
夕飯に間に合うルートだと確認できたので決行することにした。ちょっと出発時刻は攻めた設定にしたので、急いで着替えて家を出た。

すでに皆さんお気づきだと思うが、この日程は武蔵浦和で時間が1時間ずれている。この致命的なミスに気付いて、こんな凡ミス今までもあって何とかなってきた思いながら、その程度だからこの体たらくという自虐も浮かぶのは、ずっと後のこと。

急いで家を出たにもかかわらず新横浜に着いたのは13:42だった。せっかく立てた予定が最初から崩れてしまった。何かアクシデントがあったわけではなく、家から新横浜まで行くまでの時間想定が甘かっただけだ。暑くて歩くペースが遅くなった、というのは全く言い訳にもならない。
次の電車は13:49の各駅か13:56の快速か、ホームの自動販売機ほうじ茶を買いベンチに座ってしばし考える。各駅は町田で快速に抜かれるとのアナウンスがありさらに迷う。とはいえ、座れる時間が長いほうがいいと思いつつ、新横浜から町田、町田から八王子の所要時間を調べもせず勘だのみで決めようとするあたり、失敗のにおいがプンプンする。
13:41の各駅がきて、座れそうなので乗った。日陰とはいえホームはそれなりに暑いので、待つのがいやだったからだ。思い返すとこういう場合、乗らない選択はほぼしないような気がする。所要時間を調べなかったのも、脳はすでに各駅を選択済みだったからかもしれない。

電車はほとんどの人が座っているくらいの空いている状態だった。右側には黒い服を着た女性が座っていて、本を読んでいた。向かい側は初老の男性が腕を組んで目を閉じていた。もっと乗っていたけど、メモにそれしか書いてない。
長津田と成瀬の間に、車両基地があり、多くの電車が止まっていた。
町田までの各駅では、数人が乗り降りしたが、混雑度合いは変わらなかった。

14:11町田着。快速に乗り換え14:13発。快速も混んでおらず両脇が空いた席に座れた。この成功体験により、次回も先行する電車に乗る選択をするだろう。
車内にはキャリーバッグを持つ人が多いと感じた。きっと遠くまで旅行に行ってきたのだろう。

橋本駅では多くの人が乗り降りした。駅前に大きめの商業施設があるのも納得。
OneNoteを見ると八王子で予定に追いつくことに気づく。新横浜で20分遅れても、八王子で20分以上待つから追いつけるのだ。

14:35八王子に到着した。すぐに1番線へ移動して、八高線に乗り換えた。八高線に乗り換える人は、ほとんどおらず、みんな改札口へと向かっていった。八高線はすでにホームにいた。この電車も空いていて余裕で座れた。14:39八王子発。これで予定通りに戻れた。

車両基地が見える拝島で時間調整のため10分弱ほど停車した。拝島を出てから単線なんだと気づいた。
拝島で数名乗ってきたが、1組のカップルと思われる男女が向かいの7人掛けシートが手すりで3つに分けられている真ん中の3席に間隔をあけずに座った。

金子では同じホームの反対側に逆方面の電車も止まっていた。乗り過ごした場合、ここで簡単に折り返せそう。

高麗川でも10分弱停車した。直通運転の電車なので乗り換えなくてもよいのはラッキーだった。
この駅名、地図で見たときは「こうらいがわ」だと思っていた。電車の乗り換え案内サイトでも「こうらい」と「かわ」を別々に入力して漢字に変換していたので気づかなかった。でも、車内放送に「こまがわ」と流れた時、高麗川のことだと気づいたのは、昔間違って覚えた記憶があったからだろう。ここにかいたから、今度はきっと覚えるはずだ。
高麗川では向かいのカップルが下りた。まず女性が電車が止まるとすぐに立ち上がりドアから出て行った。男性はみんなが下り終わったころ悠然と立ち上がり出て行った。カップルの行動とは思えない。電車がすぐに出発すれば、改札までの間に男性が追いつくところが見られるかもしれないと思ったが、時間調整の停車駅だったのでかなわなかった。カップルだと思ったのが間違いだったのだろうか。イヤホンで音楽を聴いていたので、会話など全然聞いていなかったが、聞いていたら腑に落ちる何かがあったかもしれない。

川越の近くになるとそれまで見えていた森はなく、住宅街が広がっていた。15:53川越についた。流れに乗って階段を上がって、電光掲示板を見上げると、埼京線は下りたホームの反対側から出ることが分かった。せっかく改札口まで上がってきたので、トイレに行くことにした。トイレを済ませ、到着したホームに戻ると、埼京線の電車がすでに止まっていた。またもやガラガラ。

川越から西大宮までは、駅間は家だらけではなく田んぼがあるようなのどかな場所だった。
武蔵浦和からの予定を確認しようとOneNoteを見て、時間の不整合に気付いた。ひどい。1時間外れているので、晩御飯に間に合わない可能性大。早く帰るなら、武蔵浦和で武蔵野線の国分寺方面へ行き南武線だろうと思いつつ、検索してみると、西船橋経由で横浜に19時前につけそうなことが分かった。ということで、予定通り千葉方面へ行くことにした。

前の席には、筒井真理子似の女性が座っていた。マスクしているから目元と髪型だけの想像だけど。

16:40武蔵浦和着。20年位前によく乗り降りした駅だが、全く知らない駅に思えた。変わったよね?

16:46西船橋行きの電車が出発した。この電車も運よく座れた。予定では市川塩浜で乗り換えることになっていたんだけど、最初に来た電車が西船橋行きだったから予定変更。一つ後は東京行きだったけど待つのがいやだったので変更。総武線から横須賀線への直通があるのを期待したが、西船橋には総武線快速止まらないのね。昔同僚から聞いたことがあったような。

途中ショッピングモールがある駅でベビーカーを持った2組の母子連れが乗ってきた。進行方向右側の扉の前にベビーカーを止めて、席に座った。へー、この辺りは全部左側のドアしか開かないのね。

三郷から横浜を検索すると、新松戸で乗り換える案が出てきた。乗ったことがない常磐線、しかも、西船橋へ行くより早く横浜につけそうなので、予定を変更した。

母子連れが下りて車内が空いたなーと思っていたら、新松戸に停車していることに気づいた。しかし今降りようとしたらドアが閉まって恥ずかしい思いをするかも、と思ったら動けなかった。新路線に乗るため次の駅で引き返そうとも考えたが、一筆書きではなくなるので、本の予定に戻すことにした。

17;35西船橋着。エキナカが充実しているので、家の人たちにお土産を買うことにした。パティスリージローのスイーツが見栄えが良いので、買うことにした。イチゴ、メロン、マンゴー、レモンにしてみた。リンゴは地味っぽくて避けた。総武線へ行くときちょっと迷った。店から一番近い通路を歩いて行ったら総武線には行けない通路だった。途中で止まって振り返ったので、後ろの人を驚かせてしまった。

総武線も空いていた。新小岩直前では、8本の線路が並走しているのが見えた。貨物船もあるのかしら。
そして、2時の方向にスカイツリーが見えた。後、橋を渡った。江戸川かな。
さすがに両国まで来ると席はほぼ埋まり立っている人もちらほら。

浅草橋では、ホームドアが閉まる時の警告音に気づいた。前からこんな落としていたっけ?

18:12秋葉原着。桜木町行きの京浜東北線に乗り換えた。乗り換え案内に従い、新橋で東海道線に乗り換える。東京でもよかったような気はするが、新橋のほうが歩く距離は短いかしらん。

18:25新橋発。上野駅でトラブルがあってダイヤが乱れているとのことだった。
東海道線の電車では、つり革の上の手すりに蜘蛛の巣がはっていた。蜘蛛はいなかったけど。

18:50横浜着。中央改札をスイカで出ると、168円と表示された。今度は朝早く出て、高崎あたりまで行ってみようか。

nice!(0)  コメント(0) 

ラムダッシュ5枚刃 素晴らしい [日記]

T字カミソリを長年愛用していた。
夜お風呂でひげをそるのが、朝の時間の節約になるし、深剃りできると思っていたから。

ここ数年、年を取ったからか、肌荒れがひどくなった。
刃交換の周期を短くしたり、アフターシェーブローションをつけるようにしたが、口の周りが赤く荒れるのを防げなかった。

最近はコロナでひげをそらなくてよい日々が続いたので、肌荒れはなくなった。
しかし、また剃りだすと肌荒れするだろう、と思うと、何か対策したくなった。

対策といっても、大したことは思いつかない。というか、電動カミソリを使うことしか思いつかなかった。

最初はフィリップスを検討した。回転刃が肌に優しいらしいから。でも、そり残しが気になる。
ほぼ買うことを決めたけど、本当に欲しいかどうか3か月くらい我慢してみた。
やはり買いたいと思ったので、再検討してみたら、パナソニックのラムダッシュ5枚刃が、深剃りと肌荒れしにくさで、フィリップスとブラウンを上回っているというウェブ記事を見かけたら、一気にそれが欲しくなってしまった。フィリップスより5千円くらい高かったのに。

使用感は、良好。風呂で、シェービングクリームをつけてそってみたら、力をかけずによくそれた。肌荒れもしない。触ると、ひげが細くなった気がする。ひげの断面方向に限りなく近い角度で剃れているからかなあと思っている。

ところで、5枚刃は外刃の枚数らしい。内刃は2枚に見える。ぱっと見、理屈(どんな効果をもたらすのか)がわからない。

パナソニック ラムダッシュ メンズシェーバー 5枚刃 黒 ES-CLV5E-K

パナソニック ラムダッシュ メンズシェーバー 5枚刃 黒 ES-CLV5E-K

  • 出版社/メーカー: パナソニック(Panasonic)
  • 発売日: 2019/09/01
  • メディア: ホーム&キッチン



買ってから、後づけの理由を書いている気がしてきた。
ストレスで、何か買い物をしたかっただけかも。

nice!(0)  コメント(0) 
共通テーマ:ショッピング

VPCJ117FJ Windows 10 Giga Pocket Digital 動作せず

テレビ機能付きVAIOをWindows 7からWindows 10にアップグレードした。使用している機能のうち、Giga Pocket Digitalだけが動かなかった。
検索でみつけたこちらのサイト (http://blog.goo.ne.jp/robitaiii/e/6a9f99e63aa8b32481dd14713e08be41) を参考にしたけど、テレビが見れなかった。

やったこと:
1. Giga Pocket Digital をアンインストール
2. EP0000285915.exeを実行
2-0. チューナーのドライバー(?)をインストールしているプログレスバーが100%近くになると、エラーメッセージが表示されて、Giga Pocketがインストールできなかった。再起動したり、別のユーザでやっても同じ。
2-1. EP0000285915.exeが自己解凍してつくるファイル群を保存しておく。
2-2. Driver\DPInst.exeを単独で実行する。何かのドライバがインストールされたっぽい。
2-3. setup.exeを実行する。2-0で失敗していたところを抜けて、インストールできた。
3. EP0000322646.exeを実行する。すぐに正常終了した。
4. Giga Pocket Digitalを起動する。メイン画面が出るが、受信設定されていない。
5. 受信設定で、チャンネルスキャンをしようとするが、「B-casカードが挿入されていない」といわれてスキャンできなかった。

Windows 7の時はテレビを見ることができていて、Windows 10にアップグレードしてもB-casカードを抜き差ししていない。一応、裏表にして挿入してみたが、同じ症状。逆向きは、無駄だと思ってやっていない。

チューナーのドライバがちゃんと当たっていないような気がする。デバイスマネージャにそれらしいドライバが見当たらないから。でも、再度2-2をやっても、正常にインストールされたようなメッセージが出てくる。

Windows 7に戻そうか…

問題解決力 Critical Thinking

ノートに書いていたことを転記する。もともとどこからかの転記だったはず。

・課題解決のプロセス
1. 環境・状況分析 ⇒ 解決すべき課題の特定
1-1. 何を考えるのか?考える目的を確認する。
1-2. 分析の切り口(フレームワーク)を決め、情報をグルーピングする。
1-3. 整理した情報から、目的に照らして何が言えるか?意味合い。
1-4. 解決すべき課題を明らかにする。

2. 課題の構造化と深堀り(原因究明)
2-1. 重要なところについて状況をさらに分解しながら問題個所を絞り込む
2-2. 様々な事象の因果関係を明らかにし、どこに手を打つべきかを考える。

3. 解決策の策定
3-1. 課題を解決するための選択肢を複数洗い出す。
3-2. 判断基準を名確認したうえで、選択肢の中から一つ選択する。

前の10件 | -

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。