ホーム » Elec

カテゴリー別アーカイブ: Elec

Category Selection

Archives of Monthly

保護中: spotread Colormunki

このコンテンツはパスワードで保護されています。閲覧するには以下にパスワードを入力してください。

保護中: Arduino mini ch340

このコンテンツはパスワードで保護されています。閲覧するには以下にパスワードを入力してください。

Bside ADM20 DMM は 測定精度がダメダメ。失敗した。

BsideADM20

Bside ADM20
3227 + 0 ★★☆☆☆
表示が 0~5999(9999)のテスタ。RMS測定を謳っている。
Aliexpressから3227円で購入。supplier shop

Summary:
表示が 0~5999まである割には 測定精度自体が
悪すぎです。
1000円位のテスタにも劣る測定精度しかない。 失敗した。
やっぱり精度表示のされてない製品は買っちゃダメだね。
USBで計測モニターできるDMMとしてつられて購入してしまったが、
+1000円出して Victory 86C あたり買うべきだったですね。
今だったら Victory 86Eが 最新機種として売られている。
USB通信機能が不要だったら ANENG-AN870  あたりがいいかも
Bside ADM20 より全然測定精度が良いです。
添付の取説のスペック表と実際の性能がずれているところもあったので
BSIDEというメーカー自体が信用出来ず、購入しないことをオススメする。

Bside ADM20 Accuracy Specifications:
±0.7% ±2digit : DCV 59.99mV, 599.9mV, 5.999V, 59.99V, 599.9V, 1000V
±1.2% ±3digit : DCA 599.9uA, 5999uA, 59.99mA, 599.9mA
±2.0% ±10digit : DCA 5.999A, 10.00A
±0.8% ±3digit : ACV 59.99mV, 599.9mV, 5.999V, 59.99V, 599.9V (10~1000Hz)
±1.0% ±3digit : ACV 750V (10~1000Hz)
±1.5% ±3digit : ACA 599.9uA, 5999uA, 59.99mA, 599.9mA (10~1000Hz)
±3.0% ±10digit : ACA 5.999A, 10.00A (10~1000Hz)
±1.2% ±5digit : R 599.9Ω, 5.999kΩ, 59.99kΩ, 599.9kΩ, 5.999MΩ (output 0.25V)
±2.0% ±5digit : R 59.99MΩ (output 0.25V)
±3.0% ±3digit : C 9.999nF 99.99nF, 999.9nF 9.999uF, 99.99uF 999.9uF 9.999mF
±1.0% ±5digit : Freq 9.999Hz, 99.99Hz, 999.9Hz, 9.999kHz, 99.99kHz 999.9kHz, 9.999MHz (1Hz~6MHzくらいは安定) 
±3% : Duty-ratio 1~99%

測定レンジ特性(実測参考値) :
DCV; DCmV; Hz : (inputR=10.0Mohm);
DCA: 599.9uA, 5999uA; (inputR=102.1ohm);
DCA: 59.99mA,599.9mA; (inputR=1.7ohm);
DCA: 5.999A,10.00A; (inputR=0.01ohm);
R: 599.9Ω (outputV:1.00V, Shortcurrent=0.29mA);
R: 5.999kΩ (outputV:1.00V, Shortcurrent=0.06mA);
R: 59.99kΩ (oututV:1.00V, Shortcurrent=0.00mA);
R: 599.9kΩ (outputV:0.92V, Shortcurrent=0.00mA);
R: 5.999MΩ (outputV:0.53V, Shortcurrent=0.00mA);
R: 59.99MΩ (outputV:0.52V, Shortcurrent=0.00mA);
diode: (outV:3.25V, Shortcurrent=1.29mA);
open-short: (outV:1.00V, Shortcurrent=1.29mA);

DCAの 599.9uA, 5999uAレンジの内部抵抗が大きく、実測時の誤差大きいし
Rの 599.9Ωレンジの測定印加電流値が大きいとか、結構ダメダメな性能だった。
また、Rの測定印加電圧がスペック表(outputV=0.25V)と違っていて 不信感持ってしまう。

USBモニターアプリについて:
Win7-64bit環境では、付属のCD-ROMのUSBドライバではうまく動かず
https://www.arduined.eu/ch340g-converter-windows-7-driver-download/ の CH341SER.zip を使いました。

その他の情報:
Hacking the BSIDE ADM20 Multimeter – Software
GitHub: BSIDE ADM20 Multimeter software for simple output on Windows (for OBS)

Aliexpressで配送料詐欺に遭遇した件 (全額返金まで)

日本人がAliexpressに注文するときの、日本人との常識差の注意点を記載してみる。
(こういう時の対応が Amazonとはずいぶん違う気がしたので
返金してもらうまでの顛末を参考資料として記録してみたい。)

Aliexpressで 配送料詐欺に遭遇したようだ。
商品購買メニューで選択した配送会社指定(Fedex-IP) をストアに無視されてしまい
他の料金の安い配送会社(SF-Express)に変更されため(配送料の差額払い戻しも無く勝手にです。
Seller Guarantees: On-time Delivery  日数 を超過する配送日数がかかってしまい
必要なスケジュールに配送が間に合わなかったです。 こちらとしては実質かなりの損失です。
Fedexへ配送日数を問合わせて充分届くと確信して注文したのに台無しでした。

ストアとメールで交渉したが、
全く誠意の無い定型文に終始するだけの返事
だったので

Open Dispure するとともにAliexpressに質問をしてみた。(2018/09/04)
(1)Aliexpressの商品注文ページで指定した配送業者を、ストアが勝手に注文者に無断で
変更してOK
なのか? (Aliexpress policy違反 だと思うが指導はしていないのか?)
(2)配送業者が勝手に変更できるなら、注文者は何を信用して指定すればいいのか?
注文メニューで選択した配送者指定は、Aliexpressでは保証されない認識で良いか?)

ストアから今までと同じ返金0という見下し回答が来たので、当然拒絶。(2018/09/05)
日本の業者なら、返金を求める状況とか理由を最初に尋ねると思うんだが?
日本人だと思って強く出れば引っ込むと思われて舐められてる気がするよ。

先の質問に対してAliexpressの担当者らしき人から返信メール。(2018/09/06)

Dear XXXXXXXXX,

Thank you for your report.
We would like to inform you that your reported case about
 product(XXXXXXxxxx) is not in our SKU Exposure Cheating policy.
Please submit your case here: http://report.aliexpress.com/
 and select the right option.
Thank you for your understanding.
Yours sincerely,

Aliexpress.com

Amazonに比べて、Aliexpressの担当者のクソ対応っぷりがすごいですね
自分の仕事じゃないって感じで、調停もせず無責任に丸投げしてるだけの文章だ
自サイトの販売メニューの信用問題なのに責任感が皆無 って感じですよ。
それって、
Aliexpressは、販売サイトとして全く信用出来ないですよ。っていう告白なのかなあ、
初期顧客サポートの実態は Amazonとは比較にならないくらい低いね。
今回のことで学習したよ。

ストアとのOpen Dispureでの交渉期間が(予想通り)何の進展もなく終了したので、
Aliexpressによる調停期間に突入した。(2018/09/10)

Aliexpressの担当からメール来た(2018/09/10)

Dear XXXXXXXX,

Regarding for your order:XXXXXXXXXXXX,
 AliExpress has intervened to help you solve the dispute.
You can still negotiate with the seller for a mutual agreement
 or agree to the solution provided by AliExpress during this period.

Note: You can resolve the issue by clicking 'Add a New Proposal',
 'Accept' (to accept the seller or AliExpress' proposal),
 'Upload Evidence' or 'Edit' (to modify comments on the proposal).

Sincerely,
AliExpress Case Management Team
2018-09-09 21:40:30
なんやねんこの内容は。「とりあえず受付けましたよ」という確認メールみたいなもんかな
でも、お客の意識を逆撫でしてるだけの気がするけど。
Aliexpressのテンプレート作成担当者ってバカなのかな?
Aliexpressから調停メールが来た。 (2018/09/11)

Dear XXXXXXXX,

Thank you for contacting AliExpress.
I am sorry to hear that you are not satisfied with your order XXXXXXXXXXXX.

Problems with the order Judgement from AE Invalid Reason
Seller change shipping method Valid
The package did not arrive within delivery guarantee time Invalid We are really sorry for what has happened. As the package was not delivered within purchase protection time, there are two options can be chosen: a. Refund 30% b. Return for Full Refund (buyer is required to bear the return shipping fee).We need your cooperation to negotiate with seller within 5 days to confirm which option will be adopted. If there is no agreement reached within limit days, we will refund you 30% accordingly.
Package Information
SF Express XXXXXXXX Delivered
Solutions:
Option 1: Please continue to wait for 5 days Response time: 5 days

Your understanding and cooperation will be appreciated.Best regards,

AliExpress Case Management Team

返品したら全額返金するが、そうじゃないなら遅延料30%でどうだ? だと。

30%返金て定形フォーマットなのかな? 他にもブログでそういう人いた気がするけど。

この文章ってAliexpressのBuyer Protectionの記載と乖離しちゃってるじゃん。
保証記述内容では、「保証期日内に届かなければ、無条件に全額返金」 になっているよ。

「返品するとしたら返送料は購買者が負担しろ」というのは返品させないための嫌がらせだよね。ミスの所在は全面的にストア側ですよこっちの都合じゃない。
(Amazonの場合だと日本国内発送なら大体は着払いで返品可能なんだが)
とりあえず、こちらの妥当だと思う損失額を提示しておいたけど、どうなりますかね。

ここでしっかりと、エビデンスを山盛りに提示することが、返金には有効だと思う。
エビデンス提示して、返金しないとまずいクレームの内容と思わせることが重要みたいだ。

自分の場合は
(1)Aliexpressの配送日数保証のページの内容を示し、返金に返品は前提でないことを提示。(保証として書いてあることを要求してるだけですよ問題ありますか?の意)
(2)Fedex-IPとSF-Expreeの配送料が大きく違うと提示故意での送料差額詐欺なんじゃねえの?の意)
(3)Fedexの標準配送日数をHPから引用。そもそも標準配送日数自体が違い等価な配送選択じゃないことを提示。(ストア側ミスの所在)
(4)Fedexは通関業者に認定済みで日本の通関での遅延日数が無いことを提示。(ストア側ミスの所在)
(5)ストアの注文ページでの、Fedex-IP配送指定時での配送日数保証のハードコピーの提示。(指定通りに発送されてれば問題なかったことの証明)
(6)同製品を約50%の価格で販売するストア
を提示。(配送遅いなら他で購入しましたよ?配送でストア選択したのに守らないなら意味ないよね。の意)

などを、エビデンスとして提示して
ストア側が配送業者を勝手に(Fedex-IPから
安いとこに)変更しなければ、遅延しなかったですよね?
と主張しました。
損失額としては、Fedex-IPの配送料+他ストアとの差額分返金しろ と記載しました。
(本来ならFedex-IPとSF-Express差額でいいのですが、大口で安く配送額設定しているはず)

また、
ストア側のエビデンスとして
Fedex-IPでも遅延したと主張するなら、同日の他のFedex-IPへの配送依頼書を提出しろ。
(つまり、自分だけじゃなく注文した日本人皆に対して送料詐欺行為してるんだろ? の意)
配送業者を変更して期日保証を守ったつもりなら、受け取りのコピーを提示しろ
とも要求しておきました。結局、両者とも提示されなかったけど)
こっち側のエビデンス提示だけでなく、
ストア側が当然出せるであろうエビデンスを
要求する内容を記載して、
「このエビデンスは当然提示できるよね?」と書くことも、有効な攻め方のひとつみたいだ。

結論:

最終的には全額返金されました。(最初の下っ端担当者とかの態度は最低だったけど。)
エビデンスをしっかり提示すれば、Aliexpressでも全額返金されるようですね。
(というか、ここまでしないと全額返品されない時点でダメダメな販売会社だとは思うが)
もう要らなかったけど商品もぶんどった。返送料を負担すると言い出せば当然返品したが無かった。
だけど手続きが面倒くせえwww 手間考えたら時給800円換算でも完全に赤字ですよ。

Aliexressでは、自サイトの注文画面からの配送業者指定が守られてなくても平気w
ユーザーとの抗争にならない限り放置っぽいw ということが今回の件で判りました。
高額の配送業者を選択する場合には、事前にストアに問い合わせないといけないね。
(面倒くせえし、急ぎの注文の時には無理だよなあ
。使えないぜAliexpress)

個人ユーザーへの、カスタマーサービスというレベルで考えると まだまだ
AMAZON >>> Aliexpress という感じですねえ。
正直ダメダメだな という感じでした。

参考サイト:
https://e-plus01.com/post-880-880
http://nora-gadgetter.net/post-3630/
海外通販 トラブル編 Aliexpress 電源入らず半額返金の巻

Which current sensor should be used. (INA226, INA219, INA3221)

TI社 high side current sensor IC 3種の性能比較

INA226 high side current sensor
GY-219 INA219 high side current sensor
CJMCU-3221 INA3221 high side current sensor

10mΩと100mΩの電流検出抵抗で 回路を組んだとき実用的と思う
検出抵抗での電力損失が1/8W以下、IC温度が60℃という条件で
測定誤差が3%以下で測定できる 電流測定レンジを比較してみた。
(TI社ウェブ上の計算ソフト使用。VCC=5V, コモン検出電圧=12V)

INA226を使うか、INA219をPGAゲイン切り替えで使うかだね。

INA226は電子回路の実用使用粋で 充分な精度がある。
100mΩ抵抗で、5mAから 0.81A(±81.92mVでリミット)まで(x160)
10mΩ抵抗で、50mAから 3.5Aまで(x70)
INA226per

INA219は INA226に比べると悪いが INA3221よりは測定レンジが広い。
100mΩ抵抗で、25mAから 1.1Aまで(x44) 

10mΩ抵抗で、250mAから 3.5Aまで(x14)
INA219はゲインを切り替えられるので精度良いレンジ選べる。
INA219per

INA3221は ADC精度はINA219より良いが あまり意味はなく
アナログ部の性能が悪いので 実用測定レンジは一番狭くなる。
100mΩ抵抗で、40mAから 1.1Aまで(x28)

10mΩ抵抗で、400mAから 3.5Aまで(x9)
INA3221per

CJMCU-3221 INA3221 high side current sensor

201×2 + 49 ★☆☆☆☆

CJMCU-3221

TI社製 INA219の機能を3回路分集積したようなIC INA-3221 を使った I2C/ IIC 双方向電流 電力モニタ 電源検出センサー 基板
電源から出力される電圧と電流を同時に計測できる。
Aliexpressから@201円で購入 Seller
TI INA3221
TI INA3221 datasheet

INA219に比べて、ADCが12bit→13bitと ちょっぴりグレードアップ。
入力端子のアンプゲインが固定になっており(INA219のPGA=/4設定 相当)
電流測定時の入力レンジは -163mV~163mV に固定になっているが
通常時には問題になることは無いだろう。(100mΩなら、1.6Aまで測れる)

INA3221 INA3221_2

CH1,CH2,CH3 端子とPOW端子の間に100mΩが接続されている
1A電流が流れた場合0.1Vの電圧降下が生じるので注意。

実はこの基板では、電流測定ペア端子の片側は全てGNDに接続されている。
つまり独立した電源からのハイサイド電流の測定が出来ない仕様だ。

POWが1つしかないから、電源電圧が3端子で共通にしかできないし
POWからの配線抵抗が共通になってしまって性能低下の要因だ。
だったら 最初からCH端子をVIN+、VIN-のペアにしとけよ と思う。

端子の片方がGNDだから 普通にローサイド電流は測れるように思ってしまうが
POW端子をGND端子と短絡しないとローサイド電流も測れない という
超判りにくい回路構成 になっている。(説明書とか無い中華クオリティ製品だし)

さらに後述のように、I2Cのアドレスを決めるA0信号も初期状態はオープンで
I2Cアドレスが確定していない状態で出荷されているのである。
使う前にA0信号を必ず半田ブリッジ設定する必要があるので間違わないように。
もう、初心者をハマりまくらせるつもりで作ったとしか思えない基板である。
(LEDなんかいらないから、GNDへのプルダウン抵抗くらい付けとけよと思う。)

自分の目的では、電源電圧も独立して同時に測りたいので改造する予定。
電流測定ターミナルは裏側につけるべきかも知れない。
赤はカットするパターン。緑はジャンパ。
INA3221.svg INA3221_2.svg

INA3221 構成図:
(電流はVIN+,VIN-間の電圧降下で測る。VINーとGND間電圧も測れる。)
ADCは1つしかないので、3つのVIN
端子ペアから選択したものを順繰りに計測。
alt_sbos576b

I2C address setting:
A0=OPEN: Address not defined (Default)
A0=GND: 40h
A0=VS: 41h
A0=SDA: 42h
A0=SCL: 43h
INA3221_I2C.PNG

Programing:

https://github.com/switchdoclabs/SDL_Arduino_INA3221

から、Clone or Download から Download ZIP を選択。
SDL_Arduino_INA3221-master.zip をダウンロードする。
(SignUpしなくてもダウンロードできる)

このライブラリでは、I2Cアドレスが40hの初期値なので、
A0ピンをGNDにジャンパしておくのが簡単です。

ArduinoIDEから
[スケッチ]-[ライブラリをインクルード]-[.ZIP形式のライブラリをインストール,,,]
で、SDL_Arduino_INA3221-master.zip をライブラリインストール。

examplesフォルダの、SDL_Arduino_INA3221_Test.inoを実行。

: ちょっと変えてみた。

//
// SDL_Arduino_INA3221 Library Test Code
// SDL_Arduino_INA3221.cpp Arduino code - runs in continuous mode
// Version 1.1
// SwitchDoc Labs January 31, 2015
//
//
// This was designed for SunAirPlus - Solar Power Controller - www.switchdoc.com
//

#include <Wire.h>
#include <SDL_Arduino_INA3221.h>

SDL_Arduino_INA3221 ina3221;

// the three channels of the INA3221 named for SunAirPlus Solar Power Controller channels (www.switchdoc.com)
//#define CH1 1
//#define CH2 2
//#define CH3 3

void setup(void) 
{
  Serial.begin(57600);
// Serial.println("SDA_Arduino_INA3221_Test");
// Serial.println("Measuring voltage and current with ina3221 ...");
  ina3221.begin();
}

void loop(void) 
{
  Serial.println("------------------------------");
  float shuntvoltageArray[3] = {0,0,0};
  float busvoltageArray[3] = {0,0,0};
  float current_mAArray[3] = {0,0,0};
  float loadvoltageArray[3] = {0,0,0};
  // channel scan
  for (int channel=1; channel <= 3; channel++){
    busvoltageArray[channel-1] = ina3221.getBusVoltage_V(channel);
    shuntvoltageArray[channel-1] = ina3221.getShuntVoltage_mV(channel);
    current_mAArray[channel-1] = -ina3221.getCurrent_mA(channel); // minus is to get the "sense" right. - means the battery is charging, + that it is discharging
    loadvoltageArray[channel-1] = busvoltageArray[channel-1] + (shuntvoltageArray[channel-1] / 1000);

    delay(500);
  }
  // channel display
  for (int channel=1; channel <= 3; channel++){ 
    Serial.print(channel); Serial.print(F("-ch Bus Voltage(V): ")); Serial.println(busvoltageArray[channel-1]);
    Serial.print(channel); Serial.print(F("-ch Shunt Voltage(mV): ")); Serial.println(shuntvoltageArray[channel-1]);
    Serial.print(channel); Serial.print(F("-ch Load Voltage(V): ")); Serial.println(loadvoltageArray[channel-1]);
    Serial.print(channel); Serial.print(F("-ch Load Current(mA): ")); Serial.println(current_mAArray[channel-1]);
    Serial.println("");
  }
}
最大32256バイトのフラッシュメモリのうち、スケッチが6162バイト(19%)を使っています。
最大2048バイトのRAMのうち、グローバル変数が445バイト(21%)を使っていて、
ローカル変数で1603バイト使うことができます。

 

INA226 high side current sensor

137 + 53 ★★★★☆

TI社製 INA226 を使った I2C/ IIC 双方向電流 電力モニタ 電源検出センサー 基板
電源から出力される電圧と電流を同時に計測できる基板
Aliexpressから@137円で購入。supplier shop
INA226は、以前買ったINA219よりも 高精度の電流計測ICだ。
TI INA226
TI INA226 datasheet

INA219に比べて、
ADC精度が12bit→16bit(±15bit)と大幅精度アップ(電圧測定は15bit)
入力端子のアンプゲインが固定になり(INA219のPGA=/2設定 相当)
電流測定時の入力レンジは -81.9175mV~81.9175mV と狭くなっていて
あまり大きいシャント抵抗を付けるとオーバーレンジになる可能性があるが
通常使用時には問題になることは無いだろう。(10mΩなら、±8.1Aまで測れる)

INA226     INA226_2

ハイサイド電位を測る VIN+,VIN- 端子の間に10mΩが接続されている
1A電流が流れても、0.01Vの電圧降下しか生じない。
(INA219の基板だと100mΩで接続されていた)

基板に型名さえ印刷されていない。 下記製品CJMCU-226の丸パクリっぽいが
電流測定抵抗が10mΩに変更されているのは数Aの電流が計れてGood。
(100mΩ抵抗のバリエーションもあるようだ。いいね。)
5-CJMCU-226-INA226-iic5-CJMCU-226-INA226-iica

丸パクリのくせに、SCLとSDAのシルク印刷を間違えている。(直さないのかw)
(製品販売説明に、大きくSCLとSDAが間違えていますと記載がある)
ちなみに実物で見ると。裏面のA0とA1の印刷位置も反対だけど、大丈夫かな。
=> 実物パターン確認して大丈夫でした。

I2Cアドレス設定(半田ブリッジで変更可能)
A1=GND, A0=GND : 40h  (デフォルト)
A1=GND, A0=VCC : 41h
A1=VCC, A1=GND : 44h
A1=VCC, A1=VCC : 45h
2018-07-13 20_53_56-High-Side Measurement, Bi-Directional Current_Power Monitor w_I&sup2;C Interface

回路図(未保証): SCLとSDAはシルク印刷のとおり誤記した形で記載しています。
2018-07-13 20_45_54-C__Users_mokawa_Desktop_Yahoo_INA226.mdpf - Dynamic Draw
VBS端子を、IN-端子とショートしておけば 負荷にかかる電圧が読み取れる。

INA226は、同じ電流検出抵抗値での電流計測精度がINA219より良い
両者で3%誤差で測れるレンジを比較してみた。(TIの製品ページの計算使用)
特に小電流での計測誤差が小さいのがいいですね。
数十mAの電流も、数Aの電流も 1つの10mΩ抵抗で精度良く測れそうだ。
INA226per

INA219per

INA219,INA3221と 性能比較してみたよ:
INA226 INA219 INA3221 性能比較

その他資料:
INA226 Power Monitor + OLED Display – Arduino Tutorial
GitHub: Combined Arduino library for reading multiple INA2xx power monitor device
Texas Instruments のデジタル電圧・電流センサ INA226 を使う

PROGRAMING:

Shunt_Voltage(reg) = Shunt_Voltage(ADC);
// 1LSB=2.5uV; Fullscale=±81.92mV(±2.5uV*32767)
// 10mΩ Shunt: 1.000A -> shunt(reg)=10mV/2.5uV=4000
Current(reg) = Calibration(reg)  * Shunt_Voltage(reg) / 2048 ;
/ Calib=512:  Current = 1000[mA] (1LSB=1mA; Max=8.192A)
// Calib=2048: Current = 4000[250uA] (1LSB=250uA; Max=8.192A)
// Calib=5120: Current = 10000[100uA] (1LSB=250uA; Max=3.2767A)

Bus_Voltage(reg) = Bus_Voltage(ADC);
// 1LSB=1.25mV; Fullscale=40.96V(1.25mV*32767)
// VBUS=12.5V: Bus(reg) = 10000[*1.25mV} ;
Power(reg) = Current(reg) * Bus_Voltage(reg) / 20000 ;
// Calib=1280: Power = 2500 * 10000 / 20000 = 1250[*100mW]
// Calib=2048: Power = 4000 * 10000 / 20000 = 2000[*62.5mW]

Texas Instruments のデジタル電圧・電流センサ INA226 を使うからArduinoスケッチを流用した。

#include <Wire.h>
// Connect INA226 with SCL (A5), SDA (A4)  <= Arduino基板の印刷場所と違うので注意!
// I2C address (default)
  const byte INA226_ADDR = B1000000;
// Register Map
  const byte INA226_CONFIG = 0x00;  //Pon value=B0100000100100111
  const byte INA226_SHUNTV = 0x01;  //Pon value=0x0000
  const byte INA226_BUSV = 0x02;    //Pon value=0x0000
  const byte INA226_POWER = 0x03;   //Pon value=0x0000
  const byte INA226_CURRENT = 0x04; //Pon value=0x0000
  const byte INA226_CALIB = 0x05;   //Pon value=0x0000
  //const byte INA226_MASK = 0x06;    //Pon value=0x0000
  //const byte INA226_ALERTL = 0x07;  //Pon value=0x0000
  //const byte INA226_MANU_ID = 0xfe; //Pon value=0x5449
  //const byte INA226_DIE_ID = 0xff;  //Pon value=0x2260

// INA226_CONFIG : RST,'000',AVG[2:0],VBUSCT[2:0],VSHCT[2:0],MODE[3:1]
// INA226_CURRENT :

void INA226_write(byte reg, unsigned short val)
{
  Wire.beginTransmission(INA226_ADDR);
  Wire.write(reg);
  Wire.write(val >> 8);
  Wire.write(val & 0xff);
  Wire.endTransmission();
}

short INA226_read(byte reg)
{
  short ret = 0;
// request the registor
  Wire.beginTransmission(INA226_ADDR);
  Wire.write(reg);
  Wire.endTransmission();

// read
  Wire.requestFrom((int)INA226_ADDR, 2);

  while(Wire.available()) {
    ret = (ret << 8) | Wire.read();
  }
  return ret;
}

void setup() {
// put your setup code here, to run once:
  Serial.begin(9600);
  while (!Serial) {}

  Wire.begin();
// average: 16 times, conversion time: 8.244ms/8.244ms
  INA226_write(INA226_CONFIG, 0x45ff);
// current conversion
  INA226_write(INA226_CALIB, 2048); // Scale=250uA
}

void loop() {
// put your main code here, to run repeatedly:
  int sv, bv, c;
  float bv_, c_;

  bv_ = bv = INA226_read(INA226_BUSV);
  //sv = INA226_read(INA226_SHUNTV);
  c_ = c = INA226_read(INA226_CURRENT);

  bv_ *= 1.250 ;
  c_ *= 0.2500 ;
  //Serial.print(bv); // bus voltage (reading)
  //Serial.print(",");
  //Serial.print(sv); // shunt voltage (reading)
  //Serial.print(",");
  Serial.print(bv_); // bus voltage in [mV]
  Serial.print(",");
  Serial.println(c_); // current in [mA]

  delay(100);
}
最大32256バイトのフラッシュメモリのうち、スケッチが5358バイト(16%)を使っています。
最大2048バイトのRAMのうち、グローバル変数が412バイト(20%)を使っていて、
ローカル変数で1636バイト使うことができます。

ANAZONストア インサイトECショップ は 要注意

ANAZONストア インサイトECショップ
(旧 インサイト・カメラEC, I・Fカメラワークス )は 要注意だと思う。
https://www.amazon.co.jp/sp?seller=A3JBKBCP2JBKTG
カメラを注文したのだが
注文時の商品説明には 未使用新品です。 
記載してあるにもかかわらず 開封済み の商品が届いた。

ボディ本体を注文したのにレンズセットの箱に入っていたりする
(レンズセットに組み合わせてあるボディは
ボディ単体での販売品より撮像素子の欠陥補償数多いという噂だし
セット品ボディをボディ単体と称して売るのは問題だろう

新品なら液晶画面に貼ってあるはずの保護シートが無かった
(いちど出荷して返品された商品だと思われます)
前者はともかく、こっちは完全に未使用新品じゃない証拠だよね。

未使用新品です。と言って売るには疑問だらけな商品だった。

さすがにこれでは信用が出来ない。
I・Fカメラワークスには 2度と注文することはないだろう。

AMAZON_IFカメラワークス

Nikon EH-5B は互換品で充分だ。

1万円ちかい価格設定の Nikonの一眼レフカメラ用ACアダプタ EH-5B の中身は
DC9V 4.5A出力 中国製(MADE IN CHINA)スイッチングアダプタ だった。
大きめだがずっしりした感じでもなく 分解修理もできない一般品という感じである。
EH-5b

このクラスのACアダプタだと 実売1500円~2000円 くらいだろう。
それを12500円の定価、10000円程度の実売価格で買うのは馬鹿らしい。

https://www.amazon.co.jp/dp/B071L8R4NC/ \3699-
https://www.amazon.co.jp/dp/B01FTYK3T4/ \4199-

などの 互換品で充分 だと思う。(バッテリーアダプタ付きだし)

TM1638 8digit-LED&KEY

268 ★★★☆☆

TM1638 8digit-LED&KEYs

TM1638を使用した8桁7セグLED表示+8プッシュボタンスキャナ
TM1638 datasheet
e-Bayだともっと安いかな eBay

7セグメントLEDの取り付け方向がちゃんと揃っていないのが安っぽい
ホビーで使う分にはいいけど製品などにはちょっと使えない感じですね
ボタンを複数同時に押してもちゃんとスキャンされるのは○です。
LEDandKEY.png
LEDansKEY-2

Arduino-Library:
github.com/rjbatista/tm1638-library

参考資料:
回路図も掲載されてて詳しい
7 SEGMENT ARRAY LED & KEY – IC TM1638
穴の位置の寸法図
TM1638 8 Keys 8-Bit Digital Tube Common Cathode LED Display Module for Arduino
日本語のサイト
薄口なブログ 『Arduino』LED&KEY:TM1638で遊んでみた2

上記のサイトに載っていたスケッチを一部変更して
ボタンの位置と2進数の位取りをあわせてみた。

byte key, key1, key2; // unsigned 8bit int for button inversion

#include <TM1638.h>
// define a module on data pin 8, clock pin 9 and strobe pin 10
TM1638 module(8, 9, 10);

void setup() {
//  Serial.begin(9600);  // PCと9600bpsで通信する。Teratermのデフォルト
}

void loop() {
  key = module.getButtons(); // 押されているボタンの値を取得:返り値byte

  key1 = key;                 // key1,Key2を使ってbit逆順にする (key1は破壊される)
  key2 = key1 & B0000001;     // key2のbit7..1はクリアして bit0にkey1のbit0をコピー 
  for(byte bitpos = 1; bitpos < 8; bitpos++) { // bit1からbit7まで繰り返せば byteが上下順序反転
    key2 <<= 1;               // コピー先を1bit左シフト key1からコピーされたbit0が空く 
    key1 >>= 1;               // コピー元を1bit右シフト key2にコピーするbitがbit0に来る
    key2 |= key1 & B0000001;  // key2のbit7..1は残したまま bit0にkey1のbit0をコピー
  }

//  Serial.println(key);
//  Serial.println(key2); 

  module.setLEDs(key); // 上部のLEDは元のボタン位置のまま表示

// 7segLEDにボタン入力を2進数に見立てて入力したkey2を10進数として表示
// 2番めの引数は小数点を光らせる位置 1で一番右側 128で一番左側 255で全部光る
// 3番めの引数は空いた桁に0を表示するかどうかのフラグ
  module.setDisplayToDecNumber(key2,1,false); // ボタンが2進数の位取りに一致して数値が表示される
}

GY-219 INA219 high side current sensor

355 ★★★☆☆

GY-219

TI社製 INA219 を使った I2C/ IIC 双方向電流 電力モニタ 電源検出センサー 基板
電源から出力される電圧と電流を同時に計測できる基板
TI INA219
TI INA219 datasheet

INA3221についてはこちら
INA226についてはこちら
INA219,INA226,INA3221の比較はこちら

ハイサイド電位を測る VIN+,VIN- 端子の間に100mΩが接続されている
1A電流が流れた場合0.1Vの電圧降下が生じるので注意
VIN- の電圧を計測するためにはハイサイド電位だけでなくGND電位が必要なのだが
ターミナル端子側で接続できないのは残念
表・裏にGNDを半田付けできる端子を パターニングしておいてくれて欲しかったところ
基板の印刷が ”6Y-219” に読めてしまう。
(と書いておけば6Y-219で検索した人もココにたどり着けるかな)
GY-219A
GY-219B

たぶんこの製品の回路をパクった製品と思われる
adafruit-ina219-current-sensor-breakout

ということで 接続図 の通り接続してArduinoのライブラリを流用したら
I2Cアドレス端子のはんだ付け変更もなしにそのまま動作した。
adafruit-ina219-current-sensor-breakout/programming

サンプルスケッチでは浮動小数点floatを使用した
ina219.getBusVoltage_V();
ina219.getCurrent_mA();
を使用しているが

あまり精度にこだわらないのであればintを返す
getBusVoltage_raw() ;
getShuntVoltage_raw();
getCurrent_raw();
を使うほうがプログラムサイズが小さくなる(ヘッダファイル変更要)

getcurrent.ico:

#include <Wire.h>
#include <Adafruit_INA219.h>

Adafruit_INA219 ina219;

void setup(void) 
{
  Serial.begin(115200);
  while (!Serial) {
      // will pause Zero, Leonardo, etc until serial console opens
      delay(1);
  }

///  uint32_t currentFrequency;
//  Serial.println("Hello!");
// Initialize the INA219.
// By default the initialization will use the largest range (32V, 2A).  However
// you can call a setCalibration function to change this range (see comments).
  ina219.begin();
// To use a slightly lower 32V, 1A range (higher precision on amps):
//ina219.setCalibration_32V_1A();
// Or to use a lower 16V, 400mA range (higher precision on volts and amps):

//ina219.setCalibration_16V_400mA();

//  Serial.println("Measuring voltage and current with INA219 ...");
}

void loop(void) 
{
//  float shuntvoltage = 0;
//  float busvoltage = 0;
//  float current_mA = 0;
//  float loadvoltage = 0;

//  shuntvoltage = ina219.getShuntVoltage_mV();
//  busvoltage = ina219.getBusVoltage_V();
//  current_mA = ina219.getCurrent_mA();
//  loadvoltage = busvoltage + (shuntvoltage / 1000);
 
  int16_t shuntvoltage = 0;
  int16_t busvoltage = 0;
  int16_t current = 0;
  
  shuntvoltage = ina219.getShuntVoltage_raw();
  busvoltage = ina219.getBusVoltage_raw();
  current = ina219.getCurrent_raw();
  
//  Serial.print("Bus Voltage:   "); Serial.print(busvoltage); Serial.println(" V");
//  Serial.print("Shunt Voltage: "); Serial.print(shuntvoltage); Serial.println(" mV");
//  Serial.print("Load Voltage:  "); Serial.print(loadvoltage); Serial.println(" V");
//  Serial.print("Current:       "); Serial.print(current_mA); Serial.println(" mA");
  Serial.print(busvoltage);
  Serial.print(",");
  Serial.print(shuntvoltage);
  Serial.print(",");
  Serial.print(current);
  Serial.println("");

  delay(2000);
}

Adafruit_INA219.h:

class Adafruit_INA219{
 public:
 Adafruit_INA219(uint8_t addr = INA219_ADDRESS);
 void begin(void);
 void begin(uint8_t addr);
 void setCalibration_32V_2A(void);
 void setCalibration_32V_1A(void);
 void setCalibration_16V_400mA(void);
 // float getBusVoltage_V(void);
 // float getShuntVoltage_mV(void);
 // float getCurrent_mA(void);
 int16_t getBusVoltage_raw(void);
 int16_t getShuntVoltage_raw(void);
 int16_t getCurrent_raw(void);

private:
 uint8_t ina219_i2caddr;
 uint32_t ina219_calValue;
 // The following multipliers are used to convert raw current and power
 // values to mA and mW, taking into account the current config settings
 uint32_t ina219_currentDivider_mA;
 uint32_t ina219_powerDivider_mW;

void wireWriteRegister(uint8_t reg, uint16_t value);
 void wireReadRegister(uint8_t reg, uint16_t *value);
 // int16_t getBusVoltage_raw(void);
 // int16_t getShuntVoltage_raw(void);
 // int16_t getCurrent_raw(void);
 };

ELEGOO UNO R3 Arduino compatible

1000 ★★★★★

ELEGOO UNO R3  (Arduino compatible board)

Aruduio UNO R3 の完全互換品です。
(USBインターフェイスチップも純正品と同じ)
造りは丁寧で全く問題ありません 100%OKな感じです。
中華製基板にありがちな基板洗浄汚れなども全くない製品でしたので
正規品に比べて価格が半分以下こちらを購入するのがオススメでしょう。
実際に自分が購入したのはいろいろ遊べそうなこちらの商品です。

81xSV1TGCLL._SL1500_

Arduino IDE にボード定義などを入れなくて認識可能
Arduino IDEでは “Aruduino/Genuino UNO” と認識されます。
71g5qdFHOtL._SL1001_.png

純正品と同じでコネクタ外側に信号名がプリントしてあるのがGoodです
シールド基板を挿しても信号を確認できるのが便利ですね。

さらに安い互換製品もありますが、USBインターフェースチップが
Win7では自動でドライバの入らないCH340という中華チップになります
CH341のデバイスドライバを入れるのが結構面倒だった経験があるので
リスクを取るほど価格差は無いためこちらを選択したほうが安心ですね。

Arduino 日本語リファレンス
http://www.musashinodenpa.com/arduino/ref/
デバッグのやり方の参考
how to debug code in arduino IDE

初心者は Arduino IDE上で UnoArduSim という簡易シミュレーターが便利
UnoArduSim Home
Arduino IDE と UnoArduSim で ソフトデバッグ – チュートリアル(ピン制御)

VisualStudio に拡張機能としてArduino開発環境を入れて開発することが可能
Arduino IDE for Microsoft Visual Studio
Visual Micro for Microsoft Visual Studio
VisualMicro Facebook page
インストールのやりかた
JH1LHVの雑記帳/Arduino デバッグ環境を強化する
シリアルモニタの使用例など
フラチキさんブログ/VisualStudioでArduinoのクロス開発とデバッグが可能!?
実際のデバッグ操作がくわしい
楽しくやろう。/Visual Studio用のArduino開発プラグインを試してみた
Q: How to debug an Arduino? A: With the Arduino debugger
Debug Arduino – Overview
Debug your Arduino code with Visual Studio Code

その他
Debugger for Arduino

富士フィルムの光学フィルタが出荷終了!!!

欲しかった 富士フィルムの写真用フィルタが出荷終了になってて ガーン!!!
写真撮影用フィルター

くやしいので 富士フィルムの光学フィルタの特性データをExcelデータに起こしてみた。
※内容は完全に無保証ですのでご承知おきください。いかなる損害を受けても当方は一切関知致しません。

Filter_FUJI.xls

Clipboard

 

保護中: I2C

このコンテンツはパスワードで保護されています。閲覧するには以下にパスワードを入力してください。

CN2596-2 step-down power module

260 ★★★★★
Aliexpress 検索 LM2596

CN2596-2 step-down power module

CN2596-2

価格に対して造りは丁寧。
電圧計が付いていて便利。
四隅にネジ穴があり使いやすい。

IN側ボタンは、LED表示のON/OFFのみ。電源自体のON/OFFは行わない。

AMAZON商品レビューより引用
電圧表示が0.4Vズレていましたが、偶然にも校正モードを発見!入力値、出力値ともズレ分を修正できました。
校正方法
OUT側ボタンでIN側-OUT側の切り替え
IN側LED点灯時にOUT側のボタンを長押し→IN側LED・数値点滅→IN側ボタン数値減・OUT側>ボタンで数値増→OUT側のボタンを長押し→IN側LED・数値点灯 で構成終了
OUT側も同様の手順です(IN側→OUT側に置き換えて校正してください)

https://github.com/TG9541/stm8ef/wiki/Board-CN2596
https://hackaday.io/project/19647/logs
https://hackaday.io/project/19647-low-cost-programmable-power-supply/log/54775-switched-load-test-with-a-modified-dc-dc-converter
https://hackaday.io/project/19647-low-cost-programmable-power-supply/log/54895-cn2596-2-board-keys-work-forth-101

XW026FR4 step-down power module

250 ★★☆☆☆
Aliexpress 検索 LM2596

造りは中華クオリティ。
半固定抵抗の半田付けが雑(方向が揃ってない。フラックスが付着したまま。リードが他の配線パターン上にかかっていてショートしないか不安)
半固定抵抗のバックラッシが酷く厳密な調整が難しい。
端子や固定用ネジ穴が無く使い勝手が悪い。
電流検出は基板パターンを抵抗としているので精度いいかげん。

lm2596s-adj

XW026FR4 - schema - edited

http://i401gou.blog.fc2.com/blog-entry-166.html

W1209 Thermo controller

260 ★★★★★

W1209 Thermo controller


価格に対して造りは丁寧
5V動作でも LED ON/OFF動作はするが、リレーがONしなかった。
センサ(10kΩ B特性サーミスタ)の応答性が悪い(熱容量が大きい)
センサのオフセットは補正出来るが ゲインの補正はできない。
(回路図のR2を 小さくすればゲインも小さく 大きくすれば逆になる 
ので調整可能だと思われる。)

サーモスイッチ XH-W1209の使用方法
 https://web.archive.org/web/20170709114825/http://www.kayaba.org/pd/xh-w1209/
サーモスイッチ XH-W1209の設定方法
 https://web.archive.org/web/20161104181913/http://www.kayaba.org:80/pd/xh-w1209/man/index.html
kghr IT備忘録 自作真空調理器 温度制御その1

拾い物の回路図 
https://mysku.ru/blog/aliexpress/33350.html

rdkt0216_2

https://github.com/TG9541/stm8ef/wiki/Board-W1209

WT-CUME01 USB audio input/output

370 ★★★☆☆

AMAZONによるとLとRが逆になっているというレビューがあり
試してみたところ実際にLとRが逆になっていました。

出力に1V程度直流電位が出ているという内容もあったがテスターで計測しているのではないだろうか ヘッドフォンなどを接続した状態であればDCリークは問題ない量だと思う。出力結合コンデンサの容量が小さすぎてスピーカー鳴らすのには向かないでしょう。
入力にDCバイアスがかかっているのはヘッドセットなどに使うことを主目的にした機種なので当然かな。

https://tigers1964.wordpress.com/2017/01/06/oscilloscope/
https://tigers1964.wordpress.com/2017/01/04/b01ihg8fnw/

DCジャック変換アダプタ

130 ★★★★★

5個ワンセットで安い。
思ったより造りも丁寧。
5個のうち不良なものは無かった

FTD1232 USB-Serial converter

245 ★★★☆☆
FTD1232

造りは中華クオリティ。
端子に茶色いフラックス付着。
機能は必要充分でOK。

FTDI232にあらず FTD1232。

Pin#
 1 TXD Output Transmit Asynchronous Data Output.
 2 DTR# Output Data Terminal Ready Control Output / Handshake Signal.
 3 RTS# Output Request to Send Control Output / Handshake Signal.
 5 RXD Input Receiving Asynchronous Data Input.
 6 RI# Input Ring Indicator Control Input.
  When remote wake up is enabled in the internal EEPROM taking RI# low (20ms active low pulse) can be used to resume the PC USB host controller from suspend.
 9 DSR# Input Data Set Ready Control Input / Handshake Signal.
 10 DCD# Input Data Carrier Detect Control Input.
 11 CTS# Input Clear To Send Control Input / Handshake Signal.
 12 CBUS4 I/O (SLEEP#)
 13 CBUS2 I/O (TXDEN)
 14 CBUS3 I/O (PWREN#)
 22 CBUS1 I/O (RXLED#)
 23 CBUS0 I/O (TXLED#)

BitBangMode PIN assignment
 (RI: Bit7) pull-up
 (DCD: Bit6) pull-up
 (DSR: Bit5) pull-up
 DTR: Bit4  pull-down
 CTS: Bit3 pull-up
 (RTS:Bit2) pull-down
 TXD: Bit0 pull-down
 RXD: Bit1 pull-up
CBUS I/O Contifuration PIN assignment
 (TXLED#: CBUS0 Bit0)
 (RXLED#: CBUS1 Bit1)
 TXDEN#: CBUS2 Bit2
 PWRREN#: CBUS3 Bit3
 SLEEP#: CBUS4 (Not Available in BitBang mode)

usb-ttl-ft232rl-pinout

a90882dad6fdea8d1440ac22024b9ce6

FTDI
Datasheet_FT232R
Bit Bang Modes for FT232R and FT245R – FTDI Chip
CBUS Bit Bang Mode – FTDI Knowledgebase
FTDI Device Input Output Pin States

ore-kb.net
できる!Bit Bangモード (I2C通信などの参考になる)

TOKIWA WEST CO.,LTD
Bit-BangManual
Bit-Bang Testサンプル(Excel)

FT_GetBitMode


QA LEDの調光方式について(追加情報)

LED調光方式について:

1: 一番簡単なのはスイッチでON/OFF。これを早い周期で切り替えてPWM調光する。
スイッチの中のLEDとかそれほどVFも必要なくIFも大きくないものならスイッチング素子を追加するだけ。

スイッチング素子はVfに余裕があるならROHMの デジタルトランジスタ が簡単。マイコンなどの出力端子に直接接続して駆動できる。

それでダメならMOSFETを使うが
入力容量がかなり大きいのでマイコンなどで駆動する場合にtrtfを考慮する必要がある。

PWM信号発生器としては
LTC6992 みたいな専用ICもあるが2$位するのでマイコンの方が安い。 PIC16F18313 あたりを使えば良い。

2:最近では安価で高性能なLEDドライバICがたくさん出ているので高輝度LEDにはこちらを使う。

昇圧や降圧回路を簡単に組んで定電流を流せるようになっているので、電流調整による電力消費も問題にならない。電流調整自体はフィードバック抵抗からの帰還値で決めているのでVRなどで調整するなら回路に組み込めば良い。またON/OFFが高速で出来る品種ではENABLE端子によるPWM制御も可能な場合が多い。

保護中: 100均ヘッドセット使うとスマホ壊れる?

このコンテンツはパスワードで保護されています。閲覧するには以下にパスワードを入力してください。

370円で アンドロイドはオシロスコープの夢を見るか?

アマゾンでUSB サウンド アダプターを購入してみた。

これでA/D変換をかけてフォトダイオードの波形を観察してみよう。

https://www.amazon.co.jp/dp/B01IHG8FNW/

周波数特性: SP -> MIC
200Hz以下からダラ下がりだな。多分MIC入力部分だが何らかの対策しないと。

hs100b

この製品を分解してみた:

https://tigers1964.wordpress.com/2017/01/04/b01ihg8fnw/

使えそうな情報を追加

http://tomeko.net/dsoundscope/

http://tomeko.net/dsoundscope/C_Media2/

http://www.epanorama.net/newepa/2012/05/08/usb-soundcard-to-digital-storage-oscilloscope/

http://hackaday.com/2015/11/04/one-dollar-usb-sound-card-turned-o-scope/

http://www.theremino.com/wp-content/uploads/2012/03/DAA_V2.5.zip

http://www.theremino.com/downloads/uncategorized

USB サウンド アダプターを分解してみた。

Amazonで370円で購入したUSBサウンドアダプタを分解してみた。
https://www.amazon.co.jp/dp/B01IHG8FNW/

基板の造りは割としっかりしている。
(出力が左右逆だという情報あり確認したら、しっかり逆でした。)

img_20170103_222941

img_20170103_223026

サウンドチップはCmedia HS-100B

img_20170101_062848

Cmedia HS-100Bのデータシート
DACは全くオーバーサンプリングしていない、素の48k16bitDAC

hs100-datesheet-rev1-4

購入時の周波数特性:

sweep

マイク入力のC15を3.3uFでバイパスしたときの特性(-5dB)
ほぼデータシートどおりの特性になった。

swwp3p3uf

あとはEEPROMでMICのハイパスフィルタをdisableするか、USBプロトコルからdisableできるようにしたい。

e06_0035_hs_100b_demo_board_user_manual_v1_0-fd757/cm119-datasheet
http://c3plamo.slyip.com/blog/archives/2015/01/4cm119.html
cm118b_datasheet_v_1-00
cm108b_datasheet_ver1-11
cm108ah
http://www.garydion.com/projects/usb_fob/
http://www.repeater-builder.com/projects/fob/startech-fob.html
http://shiro00000.blog46.fc2.com/blog-entry-1141.html

AVR CPU from Microchip

Microchipのサイト内にATMELショップができていた
ArduinoとかもMicrochip製ってことになるんだろうな。
AVR 8bit coreで PICの周辺回路が使えるようになるといいな
8bitPIC coreのアーキテクチャはさすがに使いにくすぎる。

http://www.atmel.com/buy/default.aspx#
http://www.atmel.com/selector.html#

https://avr.jp/

 

 

 

 

保護中: フォトセンサー用高性能レンズを 100円でGetだぜ

このコンテンツはパスワードで保護されています。閲覧するには以下にパスワードを入力してください。

350円で デジカメを遠隔操作

実験装置で対象を再現性良く複数回撮影したいのだが、カメラをマウントに固定してもシャッターを切る時にシャッターが割りと重くマウントのガタツキなどでどうしても多少ブレてしまうため、RICOH GXシリーズのリモートレリースをプログラムから制御できないかを検討してみたところ、何とかなったので報告。

とりあえず秋月FT232でBIT BANG モードで動かしたら 問題なく動いた。

ココらへんだとアマゾンで関東への配送料無料で244円でBIT BANG モード動く周辺機器買えますな。
https://www.amazon.co.jp/dp/B01LZEYQV2/
https://www.amazon.co.jp/dp/B01LH53224/

多分200円の下記でも大丈夫でしょう。
https://www.amazon.co.jp/dp/B01KZWJRRE/
PL2303HXチップセットを使用とか書いてあるから使えないね。

これらとダイソーの100均miniUSBケーブルを使えばBIT BANGモードでPCから遠隔操作可能。
Androidスマホからでも操作可能(OTG可能な端末に限る)。

電池と受光素子で制御するようにすれば、赤外線でシャッター切れるようにできるかな。

参考サイト:
Caplio GX100用リモコンCA-1続き
SDMの改造(A570IS) CA1波形
Caplio GX100用間欠撮影タイマー回路
AndroidからFTDI Bit-bangモードの制御
FTDrvier : Android USBシリアルドライバ

しかし、RICOH GXシリーズって、RAWデータが出力できるから便利に使っている感じだけど マウントするとバッテリーが取り出せないわ、USBから給電できないわ、かなり設計が使い勝手に対して欠陥ありな感じなんだよねえ。USBからの給電くらい何とかならなかったのだろうか。