ホーム » コンピュータ (ページ 38)

コンピュータ」カテゴリーアーカイブ

システム

最近の投稿

アーカイブ

カテゴリー

iOS12でインターネット共有ボタンが押せない

バグだな。IOS12のインターネット共有の画面、検索バーが表示されて、共有On/Offボタンを隠してしまい、触れない。検索バーどうやって消すの?

((追記))
ひとまず、再起動すれば、もとに戻った。

iOS12,WatchOS5インストール

夜中に目が覚めてインストール開始。起きて使ってみたけど、よく使う部分では変わりないな。
でも、操作が軽くなったように思う。
{CAPTION}

mineo 宛のメールを取り込む

子供の携帯は、mineo を使っているけど、子供の契約変更(auプラン→docomoプラン)の時に、子供のmineo メール宛に送られている確認メールに気づくのが遅れ、手間取った。

子供の mineo メールのアカウントで、転送設定すればいい…と思ったけど、mineo メールにはそんな機能は無いらしい。gmail で mineo のメールを取り込む方法もあるけど、基本は本人任せで契約変更をしたい時だけメールを確認するのなら、自宅のメールサーバに読み込むほうが手っ取り早そう。

そこで、自宅メールサーバで、mineo.jp のメールを取り込む .fetchmailrc を書き、crontab で fetchmail を実行するように設定した。

EdgeRouter-X で ssh 公開キーの登録

CUIで登録する方法

EdgeRouter-X で ConfigTree で設定できる項目は増えていて、WebUI で登録できそうなんだけど、失敗するので、CUI で登録する。

((接続元))
$ cat ~/.ssh/id_pub.rsa

ssh-rsa XXX….XXXX xxxx@server

((EdgeRouter))
$ configure
# set system login user xxxx
    authentication public-keys

xxxx@server

 type

ssh-rsa

# set system login user xxxx
    authentication public-keys

xxxx@server

 key

XXX….XXXX

# commit
# save
# exit

WebUIで登録する方法

設定ができた後だと、ConfigTree に設定内容が反映されて、WebUI での正しい設定のやり方が分かった。

WCR-1166DSを導入

色々と1FでのWiFi環境の整えるなか、先日は2FWiFiルータにレフ板を設置して、かなり改善したけど、ママが「台所で使えん!」とのクレーム。レフ板の方向からすると、1F居間が限界。ということで、親のエアコン更新した時のポイントが残っていたので、WCR-1166DS を買ってきた。Buffalo だから相性はいいだろう。

1F   駐車場
台所|居間|玄関|寝室
ーー+ーー+ーー+ーー
風呂| 座敷 | 座敷

2F |子供|子供|
  +ーー+ーー+
  | 居室  |
    (WiFi)  

メールの日本語化

自宅で動かしている様々な機能で、警告メールを送信することも多いけど、基本英字。日本語でも文字コードが utf-8 なら、mail コマンドで送ることもできるけど、日本語の定番のJISコードで送りたい。そこで、Subject をMIMEエンコード、本文をJISコードで送るスクリプトを設置。

#!/bin/bash
# 日本語のメールを送る(SubjectのMIME化,本文のJIS,Content-Type出力)
# Usage: mail-jp -s SUBJECT -r FROM TO_ADDR ...
SUBJECT=""
FROM=""
TO=""
( # オプション(subject,from)引数処理
  while [ $# -gt 0 ]; do
    case $1 in
      '-s' )
         SUBJECT=$2
         shift
         ;;
      '-r' )
         FROM=$2
         shift
         ;;
      * )
         # レシビの出力
         [ -n "$FROM" ] && echo "From: $FROM"
         [ -n "$SUBJECT" ] \
             && echo "Subject: $SUBJECT" | /usr/bin/nkf -M
         echo 'Content-Type: text/plain charset="iso-2022-jp"'
         echo 'Content-Transfer-Encoding: 7bit'
         break
         ;;
    esac
    shift
  done
  # 引数(to:メールアドレス)
  while [ $# -gt 0 ]; do
    echo "To: $1"
    shift
  done
  echo ""
  # 本文
  /usr/bin/nkf -j
) | /usr/sbin/sendmail -t

WiFiレフ板

写真撮影用のレフ板ではありません。(^^;

2Fに設置してあるWiFiルータを補助するために、WiFi中継機 wex733d を設置してたけど、あまりにも動作が不安定なのできっぱり諦めた。代わりに、無線LAN電波を反射させるレフ板を作ってみた。手元にあった薄いスチロール板にアルミホイルを貼っただけ。

最初、WiFiの後ろの壁にそのまま立てかけたけど、効果も出て 1F居間 でもつながるようになった。しかしさらに外の駐車場(車のナビのWiFi)では、接続不可能だった。そこで、1Fに電波が飛ぶように、レフ板を下向きに倒してみた。これにより、外の駐車場でもかろうじて電波が取れるようになった。

{CAPTION}

FOLO robot

{CAPTION}

以前に参加した蟹ロボコンの講習会で実験用にもらった MapleSyrup と FOROを、IchigoJamで動くようにしてみた。

接続とマウント

接続は、こんな感じ。

{CAPTION}

ライントレース用のセンサーの取り付け。Rasbee TCRT5000 IR反射センサ

{CAPTION}最初の取り付け版(金属プレートの入手が難しい)

タミヤ 楽しい工作シリーズ No.157 の軸受部を FOLO 頭部接続部に穴を開けて、長めのシャフトで固定。
IchigoJam は、軸受の穴に結束バンドで固定。軸受の上面に両面テープを貼り、電池ボックスを固定。

ライントレース

10 'FOLO robot         | 腰モータが速くて失敗
20 A=IN()&6            | IN(3),IN(2)だけ残す
30 IF A=6 THEN B=2     | 黒黒→直進
40 IF A=4 THEN B=2+16  | 黒白→左直進
50 IF A=2 THEN B=2+32  | 白黒→右直進
60 IF A=0 THEN B=0     | 白白→停止
70 OUT B : WAIT 10     | 出力, 待ち
80 GOTO 20

問題点

足を歩行させる動きの効率の悪さから直進速度が遅いのに比べ、腰(足)を回転させる動きが速いので、すぐに(白,白)領域にセンサーが入って止まってしまう、もしくは境界で曲がりすぎる。

腰の動きを遅くしたいけど、OUT5はPWM命令を使えばモータの速度を落とせるけど、OUT6はPWM命令が使えない。ソフトウェア的に対応が必要。

改良版

10 'FOLO robot
20 A=IN()&6 : B=0      | IN(3),IN(2)だけ残す
30 IF A=4 THEN B=2+16  | 黒白→左直進
40 IF A=2 THEN B=2+32  | 白黒→右直進
50 IF A=6 THEN B=2     | 黒黒→直進 
60 OUT B : WAIT 1
70 B=B&3               | 方向回転モータは止める
80 OUT B : WAIT 4      | 出力, 待ち
90 GOTO 20
  • ライントレース動作になるためには、前進速度と曲がる速度を調整し、60行 WAIT 1 / 80行 WAIT 4(腰モータのデューティー比(約20%)が良かったかな。(前進はフルスピード設定)
  • 反射型光センサーは赤外線は反射・透過性が高いので、コースをコピー用紙にプリンタで黒印刷だと、プリンタの黒を認識しづらい。以下の動画では床板(黒)とコピー用紙(白)の境界で走行。
  • センサーが微妙なので、センサー周りに内側黒塗りの遮光カバーを付けている。(効果は不明)
  • FOLOは座高が高いため、歩行動作では体の揺れが大きい。このためセンサー・床間の距離が安定しにくい。光センサーをアナログ命令ANA()で取得しても、閾値設定が難しい。
    PCN福井さんの車体では、センサーを床で滑らせて距離を一定に保つことを考えているみたい。

apachectl graceful で segmentation fault

以前からたまに発生していた、夜中になると、Webサーバが停止するトラブル。

確認をすると、logrotate あたりの cron で、“apachectl graceful”を実行すると、apache2 の子プロセスが、segmentation fault で落ちている。

最初は、エラーメッセージに geoip あたりのモジュールのエラーが出ていたので、いろいろ調べたけど改善せず。根本の原因ではなかったようで、更新をダメ元でかけているうちに出なくなった。

以前に、同じ症状で、 php7.2 → php7.0 にしていたけど、改めて最新パッケージにするために、最新の php7.3 に切り替える。これにより、graceful をかけても、落ちなくなった。

$ sudo aptitude install php7.3 php7.3-cli php7.3-common
     php7.3-curl php7.3-gd php7.3-imap php7.3-json
     php7.3-mbstring php7.3-mysql
$ sudo a2dismod php7.0
$ sudo a2enmod php7.3
$ sudo /etc/init.d/apache2 restart

しかし、最新の php7.3 にあげたら、wordpress の投稿時に、以下のようなメッセージが表示されるようになった。PHPのcompact()の説明にも、php7.3から E_NOTICE を出すようになったと書いてある。

Notice: compact() : Undefined variable:...

エラー警告は消したくないけど、デバッグモードを外す。

/* /etc/wordpress/config-default.php */
define( 'WP_DEBUG' , false ) ;

悪質なMegaIndexによるcrawl

なんか、Webのアクセスが多いと思ったら、マナーの悪いサーチエンジンMegaIndexによるクローラ。アクセス元 176.9.146.74 を調べると、所在地はアメリカだけど、UserAgent をみると、”Mozilla/5.0 (compatible; MegaIndex.ru/2.0; +http://megaindex.com/crawler)” なんて書いてあるから、ロシアかな。

robots.txt に、”UserAgent: MegaIndex … Disallow /”を書き加え、参考にしたサイトに記載のあった他の悪質クローラも拒否る。(といっても robots.txt 無視されたら効果ないし。)

中国・ロシアとかは、geoip を使いIPアドレスを国単位で拒否しているけど、所在がアメリカじゃあなぁ…User-Agent でも弾いておくか。

Google 検索

My Google   Yahoo

Microsoft

ファンサイト