2020年2月29日土曜日

透明アクリル8セグメントLED (サポートページ)


概要

このページは「透明アクリル8セグメントLED」のサポートページです。
内容は、取扱説明書と同じです。


「透明アクリル8セグメントLED]とはアクリル板に筋目を入れ、下部からLEDで照らすことで筋目を浮かび上がらせ、複数のアクリル板を組み合わせることで数字を表現する表示部品です。

 LEDドライバIC(MY9221)を使用しています。LEDの制御はdata, clock, 電源, GNDの4線(通信線は2本)で行います。ドライバICには通信線の出力があるので、信号線を直列に接続して複数個(桁)の制御が可能です。

サポートの範囲は、このページ・取扱説明書にある情報のみとなります。ドライバIC(MY9221)の制御方法や、マイコンのプログラミングに関しては受け付けておりません。
これらについては、各自で対応してください。

製品そのものにかかわる問い合わせは、このページのコメント欄に記載してください。
(対応は公開で行います。)


LEDの制御にはLEDドライバICMY9221SSを使用しています。これにより、制御はシリアル2線(data, clock)で行うことができ、MY9221SS同士をシリアル線で連結することにより多桁表示ができます。





多桁使用例(デジタル時計) 販売: minneサイト  

サンプル回路としてmbed(LPC1768)を使った回路、プログラム例を用意しています。

寸法


回路図






電子部品一覧

記号
部品名
購入先(すべて秋月電子通商)
IC1
MY9221SS
通販コード: I-09677
LED1LED8
白色:OSWT1608
緑色:OSTG1608C1A
青色:OSBL1608
橙色:OSOR1608C1A
ウォームホワイト:OSMW1608C1A
通販コード
白色:I-03986
緑色:I-06417
青色:I-03982
黄色:I-03984
橙色:I-06416
ウォームホワイト:I-09640
R1R3
3kΩ 0603チップ抵抗
通販コード: R-06302
CONN1,CONN2
5Pinピンヘッダ
通販コード: C-06631
5Pin ピンソケット
通販コード: C-10073

部品のデータシートは秋月電子通商のサイトにあります。

サンプル回路・プログラム

mbed(LPC1768)で、2桁の表示をさせるプログラムを用意しましました。

最新のmbedライブラリでは動作しません。(デジタル出力に関する動作がプログラム作成時とは異なっているようです)このソースプログラムに同梱されているmbedライブラリを使用してください。最新のmbedライブラリへの対応は行いません。このプログラムは動作確認用としてのみ提供します。

binファイルをmbed(LPC1768)にコピーすればそのまま動作します。

実体配線図

以上

ESP32でのシリアル受信処理が最後まで完了しない対応


fix for "realtime uart" in esp32-hal-uart.c #1674

に対応方法があった。


 1.シリアル受信で受信データが途中までしか取り出せない
 これは、ESP32の受信関数の設定の問題
 ....\Arduino\hardware\espressif\esp32\cores\esp32\esp32-hal-uart.c
 のファイル内の
 void uartEnableInterrupt(uart_t* uart)
{
    UART_MUTEX_LOCK();
    uart->dev->conf1.rxfifo_full_thrhd = 1;  //112;   ←ここ!
    uart->dev->conf1.rx_tout_thrhd = 2;
    uart->dev->conf1.rx_tout_en = 1;
    uart->dev->int_ena.rxfifo_full = 1;
    uart->dev->int_ena.frm_err = 1;
    uart->dev->int_ena.rxfifo_tout = 1;
    uart->dev->int_clr.val = 0xffffffff;

    esp_intr_alloc(UART_INTR_SOURCE(uart->num), (int)ESP_INTR_FLAG_IRAM, _uart_isr, NULL, &uart->intr_handle);
    UART_MUTEX_UNLOCK();
}

uart->dev->conf1.rxfifo_full_thrhd = 1;  //112;   ←ここ!
を1にすればよい。ここに設定した数字までデータがたまらないとSerial.available()の戻り値が応答しない

2018年11月24日土曜日

MDX-20 controler(mbed LPC1114)設計データ

ひとつ前のblogでmbed(LPC1768)でコントローラを作りましたが、マイコンが7000円と高いので、LPC1114で作り直しました。マイコンは200円なのでだいぶ下がります。

ただし、処理能力が低いので、SDカードからMDX-20への転送速度が遅く、ぎりぎり使い物になる程度です。
転送速度が遅いので、ブレットボードでの動作確認までして、開発を止めました。

ここでは設計データを残すために資料をまとめました。

LPC1114と各部品の接続とprogram はここに置いておきます。

190102 UARTの配線ミスの修正をおこないました。Programにも、MDX-20へのデータ送信で、MDX-20からの停止指示(CTS)が来ても送信する不具合がありますが、これは修正していません。


2018年11月23日金曜日

MDX-20 controler(mbed LPC1768) 設計データ


設計、プログラムのデータをまとめました

回路図は作らず、mbedと部品間の接続関係の資料を作りました。(PCBは作らずユニバーサル基板でつくったので)
190102 UARTの配線の間違いと、Programの修正を行い、データを更新しました。
回路データ、mbedProgramのリンク

このコントローラはfusion360で作成したRMLデータをMDX-20に流し込むために作りました。
MDX-20では、ユーザー原点の設定ができませんでしたが、このコントローラでそれを可能にしました。
RMLデータはUSBメモリでコントローラに供給します。
コントローラがMDX-20を制御するので、パソコンは不要です。

MDX-20の通信コネクタの情報と、Fusion360でのRMLデータ出力設定については、下記のblogを参照してください。

これまでのMDX-20コントローラ作成のblog

MDX-20を使う


mbed LPC1768で作るMDX-15/20 controler

(経過報告)MDX-15/20のコントローラをmbedLPC1768でつくる

Fusion360の設定

fusion360のCAMデータをMDX-15/20で使用する

2018年11月11日日曜日

M5Stackシリーズの機能一覧

性能の違いが判らなかったので一覧表を作成した。

データ元はこちら


FIREが特殊。
BASICとM5GOが同じ。
GRAYはBASIC,M5GOにMEMSを追加
といった感じ。

2018年11月10日土曜日

M5stack GrayでMLX90640(サーマルカメラ)のサンプルプログラムを動かす。

MLX90640(M5Stak用ミニサーマルカメラユニット)M5Stack Grayを使うための手順をまとめました。

販売元のwebには、
M5BurnerでM5GO / M5Stack FIREにファームウェアを書き込むとモジュールが動作可能となり、Arduino IDEでプログラムできるようになります。」

とあり、M5Burner付属のM5GO, M5Stack FIREのfirmwareを書き込み、arduino sample programを書き込み試してみましたが、i2c driverで "nat ack read"が出て動きませんでした。
ここまではarduinoIDEのボード選択は"M5Stack-Core-ESP32"

この後で、arduinoIDE Borads Managerで、"M5Stack-FIRE"のボードデータがあったのでこれに入れ替えて、再度上記のM5Burnerでのfirmwareを書き込んでやっていましたが駄目でした。

(M5BurnerでのfirmwareとarduinoIDEのボード選択の違いは理解していません)

販売元のwebには、
「・・・M5BurnerでM5GO / M5Stack FIREにファームウェアを書き込むとモジュールが動作可能・・・」
の意味ですが、新しいfirmwareでは Wire.endTransmission()の戻り値が拡張されており、既存のfirmwareではエラーになることの対応です。

ですが、上記の動作確認では対応できませんでした。

M5Stack Grayでは、Wire.endTransmission()の戻り値の判定を旧のものにあわせれば動くようになります。

MLX90640_I2C_Driver.cpp 

42行目
if (Wire.endTransmission(false) != 7) //Do not release bus
if (Wire.endTransmission(false) != 0) //Do not release bus

にするとエラーが出なくなります。


あと、M5StackのLCD表示が無駄に回転しているようなので、
MLX90640.cpp 119行目(setup()内)
M5.Lcd.setRotation(1);
をコメントアウトします。

これで、firmwareを入れ替えなくても、M5Stack Grayで動くようになります。


備考:
M5Stack にはBasic, Gray, FIRE, GO がありますが、この違いがよくわかりません。

M5Burnerでfiwmwareを書き込めますが、これにはBasci, Gray名義のfirmwareがないので、どれを選択すべきか変わりません。

arduinoIDEのボード選択と、M5Burnerのfirmwareの関係が分かりません。

M5BUrenerには"UNIT_THERMAL_V0.1"というfirmwareがあります。これを書き込むとサンプルプログラムなしでサーマルカメラの動作確認ができます。


2018年7月1日日曜日

JeVois-A33JeVois Windows10でトラブル続き

JeVois-A33 をswitch scienceで購入しました

EPSON endeber win10pro で動作させようとしています。

現状、USBデバイスとしてカメラとの認識が頻繁に途切れる現象が出ておりつかえません。

これまで行った対応をまとめます。

1.USBポートの移動

 本体前面のUSBポートでは認識しませんでした。これを背面のUSBポートに移動させると認識するようになりました。

 前面はマザーボードから中継ケーブルを経由するのがいけないのだと思います。

2.windowsのレジスタをいじる


Jevois detected by Windows but no video

のやり取りの
----------------------------------------------
Ok, apparently this is a known issue on Windows 10 Anniversary update, where Microsoft introduced a new Windows Camera Frame Server and redirected all application access to webcam through it.

https://arstechnica.com/information-technology/2016/08/windows-10-anniversary-update-breaks-most-webcams/

I followed the steps in the article below to disable the frameserver in registry and the camera started working after a reboot.

http://wccftech.com/fix-windows-10-webcam-issue-anniversary-update/

Hope this works for other people.
----------------------------------------------
から↓の手順を実施

wccftechのサイトの内容を実施。

-----------------------------------------

Fix Windows 10 Webcam Issue After Anniversary Update

  • First and foremost click on the Start Menu and do a search for ‘regedit’ and launch the program.
  • Now in the left hand sidebar, navigate to the following location: HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows Media Foundation > Platform.
  • Once here, right-click on the ‘Platform’ folder in the left hand sidebar and then hover your mouse over ‘New’ and then select ‘DWORD (32-bit) Value.’
  • Name the value ‘EnableFrameServerMode’ and then set the value to ‘0.’
  • Now navigate to HKEY_LOCAL_MACHINE > SOFTWARE > WOW6432Node > Microsoft > Windows Media Foundation > Platform.
  • Right-click on ‘Platform,’ then hover above ‘New’ then add a DWORD value. Name it ‘EnableFrameServerMode’ and set the value to ‘0.’
The last step is only necessary if you’re running a 64-bit version of Windows.
From here on in you should not have any sort of webcam related issues on Windows 10. Lastly, also be sure to restart your PC once you’re done with the changes.
-----------------------------------------



認識が切れる現象は解消せず。(なんとなくつながっている時間はながくなった気がする)

3.camera側 mini-USBの嵌め合いがゆるい

嵌め合いが緩く、がたつきます。PCがcameraを認識していて、cameraアプリで表示しているときに、USBケーブルに触れると認識が途切れます。

どうも、これがあやしい