このブログを検索
2024/11/29
2進数を10進数に変換
2024/11/27
ベースクリッパとピーククリッパの構成と波形の見分け方
工事担任者第2級デジタル通信を受けてみようと思っている。
テキストを読んでいると、ダイオードを使用した波形整形回路というものがでてきた。特定の基準電圧以上または以下の部分を取り出したり取り除いたりするクリッパというものがあり、基準電圧以上を取り出すのをベースクリッパ、基準電圧以下を取り出すのをピーククリッパ(リミッタ)という。
テキストにはクリッパ回路の出力電圧の波形から、どの構成かを識別する問題があった。
わからなかったので、テキストの説明を読み返したが何度読んでもしっくりこない。部分的に理解できても、どういうときにダイオードが導通状態となるのか、導通するしないによって出力電圧がどうなるのか、ということの法則性のようなものがつかめない。
わからないのでネットで検索してみると、工事担任者試験ではないが、平成30年の電検三種の理論の試験第13問についての説明をしている人が何人もいる。
よく出る問題なのか、難問なのか.....
それらの説明、ブログやyoutubeの動画をいろいろ見て、ようやく理解することができた。
(細かいところで怪しい部分はあるが.....)
そして、一通り理解してみると、ある構成を一つ覚えれば、他の構成が容易に導けると思い、まとめてみた。
1.クリッパにはベースクリッパ(BCとする)とピーククリッパ(PCとする)の2種類ある
2.それぞれの構成において並列形と直列形がある
3.さらに、すべての構成において基準電圧が+の場合とー(マイナス)の場合がある
というわけで8通りの構成がある。
波形については、
1.BCはベース(土台)をクリップ(切り取る)→基準電圧以下を取り除く
2.PCはピーク(山)をクリップ(切り取る)→基準電圧以上を取り除く
3.基準電圧がマイナスの場合は、以下・以上が逆になる。
BCの直列、基準電圧がプラスの場合を覚える。
上下に2本の線があり、上の線上にダイオードがあるのが直列、上下の線を結ぶ線上にダイオードがあるのが並列。直列の場合、抵抗が上下を結ぶ線上にあり、並列の場合上の線上にある。そして、上下の線の下方に上側がプラスの電源がある。
BCの直列形の場合、ダイオードは右向き(カソードが出力側)
2024/11/19
抵抗の並列接続について
2024/11/15
raspi zero2その後
2024/11/13
iPhoneのアップデートに失敗、復元もできなくなる
家で仕事をしていて暇なのでiPhoneのアップデートをした。普段はだいたい家のWifi経由でやっているのだが、CDをiTunesライブラリに追加してそれと同期させるために久しぶりにiTuneにつないだらアップデートがあると表示されたのでついでにやっておこうと思った。
ダウンロードに結構時間がかかっていて、別のことをして放っておいた。しばらくたってアップデートが始まり、iPhoneの画面が黒い背景に白いリンゴと進行を示す白い横線になった。
が、横線が数ミリくらい進んだ状態で止まってしまった。
どれくらいの時間がたったかは定かではないが20分くらい止まったままだったと思う。
どう見ても進んでいないので強制的に電源を落としリカバリモードで起動しアップデートを再実行しようとしたができない。仕方がないので「復元」を選ぶがそれもできない。
何度か試してダメなので、とりあえずもう一台あるiPhoneにSIMを差し替えた。apple idを変えたりlineやpaypayが入ってないので入れたりいろいろやって1時間くらいかかる。とりあえず「ケータイがなくて困る」という事態はなんとかなった。
アップデートに失敗したiPhoneも、そう簡単に壊れないだろうと再度復元を試みる。調べると、MS StoreからダウンロードしたiTunesで失敗することがあるという情報があった。appleサイトからダウンロードしたものを使えばうまくいく、とある。
appleのサイトにもMS Storeのリンクがあるが、「ほかのバージョンをお探しですか?」のリンクからstore経由でなくダウンロードできる。(本当に違うものなのか確かめていないが)
iTunesを入れなおすと、失敗していた復元が進むようになった。
が、途中で失敗する。
lightningケーブルを変えたり、接続するUSBポートを変えたりいろいろやるがどうしてもうまくいかない。
appleに問い合わせると、appleデバイスというソフトがあるのでそれでやってみてというのでやってみたがiTunesと同じような状態。
「別のPCにつないでなおった」「macにつないでなおった」などの情報があったので別のノートPCにiTunesやappleデバイスを入れてやってみるが、同じ。
Lightningケーブルを変えると、止まる場所が多少変わったりするが、途中で失敗するのは同じ。
失敗したときに表示されたメッセージで検索してみるが、参考になる解決方法は見つからない。サポートに伝えてもそのメッセージはアップルが公開していない、と言う。
iPhoneはリセットすると通常通り起動せず、「リカバリモード」と呼ばれるらしい、黒い背景にライトニングケーブルとノートPCの絵が描かれた画面が表示されて止まる。
機種は13 miniで、iOS 18.1 にしようとして失敗した。上げる前のバージョンがなんだったか覚えていないが、18系だったはず。
リカバリモードでPCにつなぐとiTunesで認識され、「アップデートまたは復元してください、アップデートならデータは残るが復元だと初期化される」というようなメッセージが表示され、アップデートしてみるとすぐ失敗し、復元してみると更新が始まるがリンゴマークが表示され下に進行度を示す白い線が出るが止まる。
表示されたメッセージは以下のようなもの。
iPhone "iPhone"をアップデートできませんでした。不明なエラーが発生しました(75)。067E.004B
iPhone "iPhone"を復元できませんでした。不明なエラーが発生しました(1109)。0634.0000
iPhone "iPhone"を復元できませんでした。不明なエラーが発生しました(53)。
2024/11/08
さくらのVPSのパケットフィルタ
さくらのVPSでsquidを設定してあったので、使ってみようと思ったのだが、使えない。
クライアントで プロキシ設定してもサーバに到達しない。firewalldやssやtcpdumpやnmapで確認する限り、どう考えてもサーバの前で止まっている。
ssで表示される、listenしているポートはすべて利用可能でsquidだけが通らない。
さくらインターネットが止めてるんじゃないか?サポートに問い合わせてみようか、と思って思い出した。さくらインターネットがパケットフィルタを提供していることを。
以前、こんなのfirewalldでやるからいらない、と無効にしたと思っていたのだが、見たら動いていて、自分が使っているポートが許可されていてsquidだけが空いてなかった。
2024/11/07
fail2ban
postfix + dovecot (TLS有効)のメールクライアント設定
ユーザー名が taro
メールアドレスが taro@example.com
とする
サーバにtaroというユーザがあること
(Maildirが必要?調べればすぐわかるはず)
サーバの種類:IMAPメールサーバー
サーバー名:mail.example.com
ポート:993
ユーザー名:taro
接続の保護:SSL/TLS
認証方式:通常のパスワード認証
送信(SMTP)サーバー
サーバー名:mail.example.com
ポート番号:465
接続の保護:SSL/TLS
認証方式:通常のパスワード認証
ユーザー名:taro
※windowsにインストールしてもダメみたい
Settings > Apps > Mail > Mail Accounts > Add Account > other > Add Mail Account
Name: (表示名)
Email: taro@example.com
Description: (説明)
INCOMING MAIL SERVER
Host Name: mail.example.com
User Name: taro
Password: (パスワード)
PRIMARY SERVER: mail.example.com が On
> Server が有効
Host Name: mail.example.com
User Name: taro
Password: (パスワード)
Use SSLが有効
Authentication: Password
Server Port: 587
Advanced > INCOMING SETTINGS
Use SSLが有効
Authentication: Password
IMAP Path Prefix /
Server Port: 993
dovecotでsslv3エラーが出るときの証明書
postfix & dovecotでSSL化していたメールサーバーの証明書の期限が切れていたため、更新したのだが下記のエラーが表示される。
2024-11-07T04:35:55.635061+09:00 jesus dovecot: imap-login: Disconnected: Connection closed: SSL_accept() failed: error:0A000412:SSL routines::sslv3 alert bad certificate: SSL alert number 42 (no auth attempts in 0 secs): user=<>, rip=xxx.xxx.xx.xxx, lip=xxx.xxx.xxx.xxx, TLS handshaking: SSL_accept()
以前は送受信できていて変えたのは証明書だけだから証明書の問題かなと思い、何度も証明書を作り直したのだがなおらない。
ログをみると sslv3 と書いてあるが、sslv3はもう使用されない、使用すべきでない古いプロトコルである。
postfix&dovecot でプロトコルバージョンの設定をしたが変わらない。
ログの内容でググると、「証明書が中間証明書を含んだチェーンんになっていない」という情報が出てくるのだが、チェーン証明書など使わないでも以前は送受信できていたので関係ないと思っていた。
DovecotのSSLエラー - GentooやIoTの覚え書きブログ
しかしどうしてもなおらないので、下記を参考にチェーン証明書を作って置き換えてみたらうまくいった....
OpenSSLでチェーン証明書を作成する方法 #OpenSSL - Qiita
しかしなんでチェーン証明書でないとsslv3のエラーになるのか... 納得いかない...
チェーン証明書の作り方なんて知らなかったから、間違いなく以前は普通のサーバー証明書で動いていたはず。
ちなみに証明書はopensslを使って作った自己CA(?)で署名したヤツである。
2024/11/06
CA構築 2024
2024/11/05
Raspberry Pi zeroのライブカメラの首振り
pi zeroにカメラをつけてケースに収めたものにサーボモーター(SG92R)をくっつけて、本体ごと回転させてカメラを首振りさせてみた。
pythonのソース
import pigpio
import time
gpio_pwm = 18
pig = pigpio.pi()
pig.set_mode(gpio_pwm, pigpio.OUTPUT)
para_max = 110000
para_min = 70000
para = para_min
interval=20
delta=10000
while True:
if para >= para_max:
flag=-1
elif para <= para_min:
flag=1
para = para + (delta*flag)
pig.hardware_PWM(gpio_pwm, 50, para)
time.sleep(interval)
except KeyboardInterrupt:
pig.set_mode(gpio_pwm, pigpio.INPUT)
pig.stop()
2024/11/04
びんぼうでいいの nano
よくみるyoutuberが、電子工作ではarduino nanoを使う、UNOは使わない、と言っていた。
私はUNOやraspberry piを使っていたがnanoは持っていない。raspberry pi picoは最近買った。
じゃあarduino nanoを買っておこうかと思ったが、arduinoはびんぼうでいいので問題なく動くので、nanoも互換機でいいだろうと思った。
aitendoで NN328CH340A という名前で600円で売っている。ピンヘッダが付属しているがはんだ付けが必要。「びんぼうでいいの」とは書いていない。
秋月電子でピンヘッダ実装済みのものは3560円だ。
ピンヘッダをはんだ付けして使ってみる。USB-Cケーブルを挿すと L というLEDがチカチカ点滅する。「故障か?半田ミスか?」と思ったが、デフォルトで本体のLEDを点滅させるスケッチが有効になっているとのことだった。
自分でスケッチを書いて外付けのLED+抵抗につなぐと動いた。
2024/11/01
Raspberry Pi Zero 2 WH で カメラモジュールv3
スイッチサイエンスで本体とカメラ(広角)とケースとカメラ用ケーブル(zero用短め)を買った。
普通のカメラでよかったのだが売り切れていて広角しかなかった。
OSは、imagerでrecommendされた 64-bitのデスクトップこみのBookwormである。
imagerでOSをインストールするときにwifiとsshを有効にしておく。
起動したらdhcpサーバーで割り当てられたIPアドレスを確認しsshする。
raspberry piでのdhcpのIPアドレス固定設定はもう dhcpcd.confでやらなくなったようだ。
面倒くさいのでdhcpサーバの方でアドレスを固定した。
いったんshutdownしてカメラをつないで起動し、apt update/upgradeして再起動した。
libcamera-hello を実行する。sshなのでプレビュー画面は表示されないがカメラは認識されている。
motionをインストールする。
いつもの設定をして
libcamerify motionを実行
pi5のときと同じエラーになったので
同じように
apt install libcamera-v4l2
を実行すると、motionが動いた。
IPA moduleのエラーが出るのも同じだが無視。
zeroだから非力かなと思ったが、2048x1536でも大丈夫だった。