趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。
RSS icon
  • FT312D

    投稿日 2013年 6月 10日 コメントはありません

    Webを見てたら見つけたのですが、FTDI社よりFT312Dというチップが出ています。

    いまいち資料をみてもピンとこない部分があるのですが、どうやらAndroid Open Accessoryとして動作するFT232Rみたいなチップのようです。

    つまり、このチップを使うと Android 3.2(だったかな?)以降でAndroid機をホストにしてUART/RS232Cの端末エミュレータが簡単に実現できそうで、Google Playにはこのチップを使ったAndroid端末用のターミナルエミュレータ(FTDI AOA HyperTerm)がFTDI社によってアップロードされています。デバッグや状態表示用にUARTを用意することが多いですが、このチップがあればノートPCを持ち込まなくても適当なAndroid端末で代替できてしまう、ということですね。

    ・・・って、検索すると、専用のチップでなくても普通のFTDI社のチップやProlific社のチップを使ってターミナルエミュレータを実現するアプリ(Slick USB 2 Serial Terminal、無料。高機能&広告無しのPro判もあるようです)もあるようで、それをライブラリ化したSlick USB 2 Serial Libraryというのもあるようです。

    話を戻して、FTDIのチップでFT311DというAndroid Open Accessory対応のホストチップもあるようで、こちらはシリアルだけではなく端子で「USB-UART」「USB-GPIO」「USB-4ch PWM」「USB-I2C(Master)」「USB-SPI(Slave)」「USB-SPI(Master)」から機能を選んで使えるチップのようです。簡単なものならデバイス側のプログラミング無しでAOAとして機能する周辺機器を作れる、ということになります。

    時間が許せば触ってみたいところですが、難しそうです。


  • Xperiaを充電するのにD+/D-をショートしないといけない理由

    投稿日 2013年 6月 9日 コメントはありません

    Xperiaを適当なUSB-ACアダプタで充電するためにD+/D-をショートしたアダプタを作成したわけですが、なぜショートしないといけないかがわかりました。

    そのためには、なぜ現在の携帯電話機がMicroUSBコネクタを充電用に採用しているか、というところまでさかのぼります。

    発端は欧州委員会(欧州連合=EUと考えてもらって差し支えないでしょう)にて、メーカーごとにバラバラの携帯電話充電器が環境への影響を考えると好ましくない、ということで、携帯電話用充電器の共通化を図る活動を始めたところにあります。

    最終的には2009年の6月に主要メーカー(このなかに当時のSonyEricssonも入っています)との間で覚書(MOU)が交わされたようで、その結果採用された充電器のプラグ形状がMicroUSBだったわけです。(参考
    そして、その普及活動のためのページが「One charger for all」で、その中に技術資料に関するページがあります。
    この冒頭に付属書2として、技術要件が記載されていて、その中の7章にACアダプタの検出方法として以下の記述があります

    7. Adapter Detection 
    As per: USB Battery Charging Specification, Revision 1.1 (BC 1.1), Section 4.1 
    Charging Port. EPS shall meet the USB-IF Charging Port Test Requirements for a 
    Dedicated Charging Port. Top level requirements listed below:
    • The EPS shall short the D+ and D- lines with a resistance not greater 
    than 200 ohms. 
    • The resistance between the D+ or D- lines of the EPS and either Vbus 
    or Gnd shall be greater than 2 MOhms. 
    • The capacitance between the D+ or D- lines of the EPS and either 
    Vbus or Gnd shall be less than 1nF.

    大元はUSBの充電仕様(Revision 1.1)に基づくUSB-IFの充電ポート(端子)試験要件からくるようです。ここで列記されているものの1番目を読むと『EPS(外部電源装置=ACアダプタのこと)はD+とD-を200オーム以下でショートすること』が求められています。(USB-IFとはUSB Implimenters ForumのことでUSBの仕様を決めている会社の集まりです)

    Xperiaはこの条件にそってACアダプタを検出しようとしていたので、PCと接続されれば相手はPCであるとして通信と充電をスタートし、D+/D-がショートされていれば相手はACアダプタであるとして充電をスタートし、どちらでもなければ相手不明として何もしなかったわけです。

    つまり、規格通りに正しく実装されているわけです。ただ、いかにも日本メーカーっぽい対応、即ちマーケットの実状と合わなくても規格を厳格に満たさなければコンプライアンスやCSRの問題になりかねないとして出荷を認めないところが多い・・・ではありますが。
    あ、ただ、SO-04Eの場合はNTT Docomoが販売ですね。おそらく規格適合が要求仕様にあるので、検査で不合格にならないためには、厳密に実装せざるをえないのかもしれません(これまたお役所っぽい対応ですが)。今後、ユーザーからの苦情が多ければDocomoから仕様変更の要求がでて、ソフトウェアのバージョンアップの際にD+/D-がショートされてなくても充電できるようになるかもしれません。

    そういえば、手持ちのUSB-ACアダプタは新しいものでも2年くらい前のものかもしれません。ひょっとすると、現在売られているものはほとんど問題ない(対応済み)のでしょうか??


  • Xperia A用充電アダプタの製作

    投稿日 2013年 6月 8日 コメントはありません

    Xperia A(SO-04E)に機種変したXperiaですが、PCに接続すると充電できるのに適当なUSB-ACアダプタに接続しても充電できないという充電動作の謎の挙動に悩んでいました。しかしながら、ググっていたらその謎がわかりました。

    どうやら、Xperiaを充電する場合にはUSBケーブルのD+とD-がショートしていないといけないようなのです。そのためのケーブルも市販されているようです。
    (追記:ショートしていないといけない理由についてはこちら。一部では「自社の純正オプションを買わせたいからだ」などという陰謀論みたいなのも見かけますが、本当のところはUSB規格に厳格に従っているからだと思います。規格の方が後から決まってしまったという不運もありますが規格未適合はACアダプタ・充電器の方です。)

    が、専用のケーブルを持ち歩くのは面倒ですし、管理も大変です。できれば汎用のUSBケーブルを使いたいものです。

    なので、自分でアダプタを作ってみることにしました。

    材料は以下の通りです。

    DSC_0012s

    材料はUSBのAプラグ、Aソケット、4x4x2のユニバーサル基板で、すべて秋月で調達できるものばかりです。後で、LEDと200Ωのチップ抵抗も追加しています。

    こんな感じで組み立てました。もしも真似して作る場合には、コネクタの仕様に十分注意してください。
    世の中には逆順に端子が配置される=USBの表裏が逆になるコネクタがあるかもしれません。そのようなコネクタを使って写真の通りに組み立てると+5VとGNDが逆になってしまいますので、おそらくスマートフォンが壊れてしまいます。

    DSC_0014s

    DSC_0013s

    これで動作テストしたところ問題ありませんでしたが、せっかくなので通電中か否かを表示するLEDを追加して、強度アップのためエポキシ樹脂で固めました。

    実際に使う場合はこんな感じになります。

    DSC_0020s

    DSC_0016s

    実際に通電させると、青色LEDが点灯します。

    DSC_0018s

    これで特殊なケーブルを使わなくてもXperia Aが充電できるようになりました。
    (写真に写っているモバイルバッテリーは何もしなくてもXperiaに充電できますが、撮影の都合上便利なので写真では利用しています)


  • Android SDK in Linuxで実機デバッグ環境構築

    投稿日 2012年 2月 15日 コメントはありません

    http://developer.android.com/guide/developing/device.html#setting-upのページに沿って、Linux環境での実機デバッグに挑戦します。デバッグターゲットはPocketWifi S(S31HW)です。

    1.Android Manifestでアプリケーションをデバッグ可能に設定する

    eclipseにてパッケージエクスプローラにて「AndroidManifest.xml」を選択し、真ん中の「Android Manifest Application」にて下の方の「「ア」アプリケーション」を選択します。

    その中の「Debuggable」の項目を「true」にします。結果はAndroid Manifext.xmlに

     android:label="@string/app_name" android:debuggable="true"

    という記述が追加されているかで確認できます。

    2.Androidの実機側でUSBデバッグを許可する

    「設定」→「アプリケーション」→「提供元不明のアプリ」にチェックを入れる。

    「設定」→「アプリケーション」→「開発」→「USBデバッグ」にチェックを入れる。

    3.udevルールを作成する

    (1)lsusbコマンドでUSBベンダIDを調べる

    Androidデバイスを接続し、lsusbコマンドで接続されているデバイスを表示する。

    $ lsusb
    Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
                :
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 005: ID 12d1:1038 Huawei Technologies Co., Ltd.
    Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub

    青の行がHuaweiなので、この行がPocketWiFi Sです。そしてベンダIDは赤字の「12d1」であることがわかります。

    (2)udevルールファイルを作成する

    ルート権限で「/etc/udev/rules.d/51-android.rules」を作成し、その中身を、

    SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666", GROUP="plugdev"

    とする。作成したファイルは、アトリビュートを変更しておく。

    $ sudo chmod a+r /etc/udev/rules.d/51-android.rules

     (3)udevルールファイルを再読み込みさせる

    udevadmでルールを再読み込みさせる。

    $ sudo udevadm control --reload-rules

    この後、一旦PCからAndroid機を取り外し、再度取り付けます。

    4.実機でデバイスが認識されているか確認する

    adbコマンドでデバイスが認識されているか確認してみます。

    $ adb devices
    List of devices attached
    5Cxxxxxxxxxx device

    となって、2行目の方(5Cで始まる行)で認識されていることが確認できます。

     5.Eclipse上で「実行」してみる

    実行すると、PocketWiFiS上で動きました!

     


  • Android SDK in LinuxMint11(64bit)環境構築

    投稿日 2012年 2月 1日 コメントはありません

    調子に乗って、LinuxMint11の64bit環境でAndroid SDKをインストールしてみます。

    1.ia32-libsのインストール

    JDKのインストールの前に、http://developer.android.com/sdk/installing.html#troubleshooting に従って、ia32-libsをインストールします。

    2.JDKのインストール

    ソフトウェアの管理から、「sun-java6-jdk」をインストールします。

    3.Eclipseのインストール

    ソフトウェアの管理からインストールできるeclipseのバージョンは3.5.2-8ubuntu3でした。一方で、Android SDKがサポートするeclipseのバージョンは3.6以降なので、手作業でインストールします。

    $ cd /usr/share
    $ sudo tar xvzof ~/ダウンロード/eclipse-jee-indigo-SR1-linux-gtk-x86_64.tar.gz

    ちなみに途中で誤って3.5.2をインストールしてしまったので、「$ sudo apt-get autoremove eclipse」でアンインストールして、上記アーカイブの展開からやり直しました。

    また、ダウンロードしてくる eclipse は「Eclipse IDE for Java EE Developers, 210 MB」でないとダメでした。「Eclipse Classic 3.7.1, 173 MB」や「Eclipse IDE for Java Developers, 127 MB」ではADT-Pluginのインストールで「開発ツール」がエラーになってしまいます。

    4.Pleiadesのインストール

    http://mergedoc.sourceforge.jp/ から Pleiades 安定版 をダウンロードした後、

    $ cd /usr/share/eclipse
    $ sudo unzip ~/ダウンロード/pleiades_1.3.3.zip

    として、展開します。展開後、/usr/share/eclipse/eclipse.ini の末尾に

    -javaagent:/usr/share/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar

    を追加します。(パスが違うので要注意)

    5.Android SDKのインストール

    home directry に android sdk を展開します。

    $ tar xvfz android-sdk_r16-linux.tgz

    SDK Tools のパスを .bashrc に追加します。

    export PATH=${PATH}:/home/foobar/android-sdk-linux/tools:/home/foobar/android-sdk-linux/platform-tools:/usr/share/eclipse
    (32bitの時と微妙に違うので注意!)

    6.ADT Plug-in のインストール

    Eclipseを

    $ /usr/share/eclipse/eclipse &

    として起動して、http://developer.android.com/sdk/eclipse-adt.html#installing に従って、ADTをインストール。途中で再起動したり、何度かライセンス確認等があるので注意。

    ★途中でSDKのアップデートがかかりました。なぜか、展開した場所と異なる場所にSDKがインストールされましたので、.bashrcを以下のように書き換えました。

    export PATH=${PATH}:/home/foobar/android-sdks/tools:/home/foobar/android-sdks/platform-tools:/usr/share/eclipse

    7.SDKコンポーネントの追加

    http://developer.android.com/sdk/installing.html の Step 4に従って、SDKコンポーネントを追加します。

    $ cd android-sdk-linux/tools
    $ android

    で Android SDK Manager が開く。しばらく待つと、Packageのリストが出てくるので、http://developer.android.com/sdk/installing.html#which に従って、パッケージを選択していく。

    今回は「Tools/Android SDK Platform-tools」と「Android 2.3.3(API 10)」と「Android 2.2(API 9)」を追加した。(「Android 4.0.3(API 15)」は初めから選択されていた)

    この辺は32bitの時と同じでした。

    8.サンプルの起動

    32bit環境の時と同様にhttp://android.keicode.com/basics/quick-start.php の「はじめてのAndroidプログラム」を参考に動かしたところ、無事にエミュレータでも動作しました。


  • Android SDKをインストールしてみた

    投稿日 2012年 1月 31日 コメントはありません

    Android SDKをインストールしてみます。

    1.使用するLinux環境

    http://developer.android.com/sdk/requirements.html に記載の環境を満たすように準備します。LinuxではUbuntu(8.04以降)でテストされている、と記載されていますが、Ubuntuではなく先にインストールしたLinuxMint12の32bit版を使ってみました。

    ここに、http://developer.android.com/sdk/requirements.html に従って、システム要件を満たすようにインストールしていきます。

    2.JDKのインストール

    ソフトウェアの管理から、「sun-java6-jdk」をインストールします。

    3.Eclipseのインストール

    同じくソフトウェアの管理から、「eclipse」と「eclipse-jdt」をインストールします。今日の時点でインストールされたeclipseのバージョンは3.7.0-0ubuntu1でした。

    4.Pleiadesのインストール

    ソフトウェアの管理から、Eclipseを日本語化する「Pleiades」をインストールします。
    インストール後、/etc/eclipse.ini (または /usr/lib/eclipse/eclipse.ini) の末尾に

    -javaagent:/usr/lib/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar

    を追加

    5.Android SDKのインストール

    home directry に android sdk を展開します。

    $ tar xvfz android-sdk_r16-linux.tgz

    SDK Tools のパスを .bashrc に追加します。

    export PATH=${PATH}:/home/foobar/android-sdk-linux_86/tools

    6.ADT Plug-in のインストール

    Eclipseを起動して、http://developer.android.com/sdk/eclipse-adt.html#installing に従って、ADTをインストール。途中でライセンス確認があるので注意。

    7.SDKコンポーネントの追加

    http://developer.android.com/sdk/installing.html の Step 4に従って、SDKコンポーネントを追加します。

    $ cd android-sdk-linux/tools
    $ android

    で Android SDK Manager が開く。しばらく待つと、Packageのリストが出てくるので、http://developer.android.com/sdk/installing.html#which に従って、パッケージを選択していく。

    今回は「Tools/Android SDK Platform-tools」と「Android 2.3.3(API 10)」と「Android 2.2(API 9)」を追加した。(「Android 4.0.3(API 15)」は初めから選択されていた)

    ・・・が、eclipseでプロジェクト作成する際には表示されませんでした。そこで改めて「ウインドウ」→「Android SDK Manager」で再度設定したら現れるようになりました。

    8.サンプルの起動

    サンプルについては、http://android.keicode.com/basics/quick-start.php の「はじめてのAndroidプログラム」を参考に動かしたところ、無事にエミュレータでも動作しました。

    <参考>

    インストールの過程では以下のサイトを参考にさせていただきました。


  • 上海電脳街散策(3) Pocket Wifi Sに現地SIMを装着

    投稿日 2011年 1月 25日 コメントはありません

    結局、USBタイプのモバイル端末(アダプタ)は見つけられなかったので、Pocket Wifi Sに現地のSIMを挿すことにしました。

    Pocket Wifi Sはe-MobileのSIMのままでも中国联通(ChinaUnicom)の電波を捕まえてローミング可能になるのですが、2円/KB(=2000円/MB)と非常に高額です。ChinaUnicomの3GのSIMを使うと、月額基本料が無しのプランで0.01元/KB(=約150円/MB)、月額基本料があるプランで相応の無料データ通信量+超過分が0.0003元/KB(=約5円/MB)ともの凄い差が出ます。しかもプリペイドですから、気がついたらすごい課金になっていた、というような心配もなく安心です。

    通話だけなら、GSMのSIMでもいいのですが、最終的にはPCを接続してモデムとしても使用することを考えると3Gの方がベターですので、探してみることにしました。

    で、時間もなかったので、百脳匯のある交差点近くの新聞スタンドにChinaMobile,ChinaUnicom,ChinaTelecomの電話番号や充値カードがあるという看板が出ていたので、「ChinaUnicomの3GのSIMはあるか?」と(英語で)聞いてみました。しかし、「3(スリー)」がわからなかった様で、隣にいた30歳くらいの男性が「サンジー」と言い直してくれた(確かに中国語でも「3」は「サン」ですからね・・・)ところ、オレンジ色のパッケージを出してきてくれました。その後もこの男性がスタンドのおじさんの中国語と自分の拙い英語の間に入って翻訳をしてくれて、無事に3GのChinaUnicomのSIMを購入することができました。

    購入したSIMをPocket Wifi Sに装着し、電源を入れると、ローミングマークなしで中国联通の電波を捕まえました。開通にはどこかに電話をかけなければならないので、会社所有の中国の携帯にかけたところ、無事に使えるようになりました。

    で、そのまま浦東空港にタクシーとリニアで移動した後、モバイルデータ通信をオンにしてPocket Wifi Sのブラウザを開いたところ、Googleの(日本語の)検索画面が表示されました。しかし、検索キーワードを入力すると結果が上手く表示されません。Gmail、GoogleMapやTwitter、主要なブログサービスなども全てうまくつながりません。一方で、普通のホームページやこのページを含む主要ではないブログにはアクセス可能でした。

    中国国内でモバイルインターネットを使うには、百度など現地のサービスに頼るしかないようです。まあ、移動中に一番欲しいのはGoogleMapだったりするので、百度の地図サービスが使えればそれでよいのですが、そこまでは確認できませんでした。


  • 上海電脳街散策(2) 散策編その2

    投稿日 2011年 1月 24日 コメントはありません

    ひきつづき、上海の電脳街散策です。

    (3)百脳匯(浦東地区)

    太平洋数碼三期から200メートルくらいでしょうか。張楊路(あってるかな?)を挟んで反対側にあります。

    ここはテナント制なのかよくわかりませんが、有楽町のビックカメラが多少は近いイメージかもしれません。ただ、 個々の売り場は小さいながらも、1階のノートPCなどはそれなりにブランドなどにわかれていた感じです。2階はかなりの広さを携帯電話が占めていましたが、どういう基準でわかれているのかはよくわかりませんでした。

    太平洋数碼三期にせよ百脳匯にせよ、立ち止まると執拗な勧誘攻撃に合うので、ゆっくり見れませんでした。特に太平洋数碼三期は同じようなものをあちこちの店で売っていて、価格の表示もないので安いのか高いのかもわかりません。また、USBで接続するモバイル通信用の端末も小型化が進んでいてUSBメモリなのかUSBのLANアダプタなのかUSBの3G端末なのかパッと見ただけでは区別がつきませんでした。

    (4)蘇寧電器(浦東)

    (浦東地区では)百脳匯から南泉北路を100メーターくらい北に入ったところにあります。

    こちらは大型電気店(チェーン店)ですが、浦東の店はそれほど大きくありません(他がもっと大きいのかどうかは知りませんが・・・)。時間が早かったせいかもしれませんし、店内の奥の1/3くらいが改装(売り場構成の変更?)中だったせいか、やる気がないのか、売り子は黙ってみているだけです。特に声をかけられることもありませんでした。ただ、USBタイプの3G端末は見つけられませんでした。携帯電話はいっぱいあったのですが・・・。

    こうしてみると、しつこく声をかけられるのも鬱陶しいですが、何も声をかけられないのも寂しい所です。(といっても、かけられても中国語ではまったく理解不能なのですが・・・)

    (5)Best Buy

    こちらは米国系の店です。場所は百脳匯と蘇寧電器の間で、蘇寧電器のすぐそばです。こちらも大型店で、売り子は(面積当たりでは)それほど多くなく、特に声をかけられることもありませんが、熱心に店員に話を聞いている客が多いのが印象的でした。(残念ながら写真はありません)

    (6)おまけ

    散策にあたって参考にしたページを挙げておきます。


  • 上海電脳街散策(1) 散策編その1

    投稿日 2011年 1月 23日 コメントはありません

    上海へ出張に行く機会があったのですが、予約できた帰国便がやや遅めの時間だったので、上海の電脳街を覗いてきました。上海の代表的な電脳街というと「徐家匯」ということらしいのですが、今回は2時間程度しか余裕がないのでホテルからみて浦東国際空港と逆方向の「徐家匯」は諦め、ホテルからみて浦東国際空港の方角となる淮海路にある電脳城「賽博数碼広場」と浦東地区にある「太平洋数碼三期」「百脳匯」「蘇寧電器」と米国系の「Best Buy」をターゲットにしました。狙いは、今後のためにモバイルデータ通信環境を整えることを考えるための下準備(調査)です。

    (1)賽博数碼広場(淮海路)

    ここは2010年版のガイドブックの地図では該当箇所(太平洋百貨の周り)に「改装中」と書いてあったのでちょっと嫌な予感がしたのですが、自分は見つけられませんでした。ただ、ここには大きなAppleストアがあって、まだ9時30分くらいにも関わらず開店をまって並んでいる人がいました。(写真撮り忘れました)

    うろうろしてもそれらしい建物はなさそうでしたので、早々に地下鉄1号線と2号線を乗り継いで浦東地区の世紀大道駅へと向かいました。世紀大道駅からちょっと迷いつつ、張楊路(だと思う)沿いに西に向かいます。

    (2)太平洋数碼三期(浦東)

    ホテルインターコンチネンタル浦東のすぐそばにありますが、外観はこんな感じです。正面の頭上くらいの高さに赤い垂れ幕が掛かっているところが出入り口なのですが、正直言って一瞬やってるのかどうかわからないです。中国では多い様なのですが、蛍光灯が白色度の高いものを使っているのと省エネのためなのか数が控えめなので、日中で日差しがあたるところでは非常に暗く見えます。

    しかし、中に入るとそれほど暗い感じはしません。

    中の様子は、いわゆる大規模なショッピングモールの中が丸ごとPCやモバイルなどの店だけで埋まっている感じです。これ全部がPCやモバイルなどの電気製品関係の店なのです。

    しかし、個々の店はそれほど大きくはありません。1階に陣取っているノートPCを売っている店(テナント)はたくさんの売り子がいて、何か言い寄ってくる(中国語がわからないので何を言ってるかわからない)のですが、2階の携帯電話の売り場、3階のPCパーツの売り場にある店は上の写真(これは3階だったと思う)の様に店番が一人で小規模な店で商売しているという感じです。

    ちょうど、しばらく前の秋葉原のラジオ会館のイメージが近いのではないかと思います。


  • Pocket Wifi Sを購入

    投稿日 2011年 1月 19日 コメントはありません

    1月14日にe-mobileのPocket Wifi Sを購入しました。Android端末としてみるとかなり安価なこともあって店頭デモ機はかなりもっさりした動きだったのですが、自分はクワッドバンドGSM + 1700/2100 CDMAのSIMロックフリー携帯としても使えるだろう、ということで購入しました。

    Android端末としてはあまり期待していなかったのですが、画面解像度は低い(QVGAなので当たり前ですが)ものの、結構小さな文字でも読めるので意外に使える感じです。それどころか、端末自体が非常に小さいので携帯に便利な上に、ブラウザやGoogleMAPなどのアプリケーションが使えてしまうので、手離せなくなりそうです。

    自分はいろんなものをあれこれカスタマイズする方ではないのですが、それでもここ数日で以下のアプリケーションをインストールしました。

    • twicca(標準のTwitterアプリが不安定なので)
    • WGConnect(ワイヤレスゲート用のアプリ)
    • 乗換案内→音声入力で「○○から××」で検索できるので削除
    • evernoteクライアント(メモ帳として)

    これからしばらく使い倒してみたいと思います。