Contact me: hankecnc@gmail.com

[马林1.0.0 b1]温度阅读 #19

推推 grbl 3年前 (2023-01-25) 316次浏览
 关闭

[马林1.0.0 b1]温度阅读#19

贾斯特约海因茨 打开此问题 on Nov 26, 2011 ·23条评论

评论

[马林1.0.0 b1]温度阅读 #19

我操作一个带斜坡1.2板的Makerbot,刚刚切换到马林1.0.0 b1.0。我怀疑读取床和挤出机温度的方式有问题。当床打开而加热器关闭时(用伏特计测量),两个温度总是升高或降低。

我在相应的设置中更改了我的引脚,如下所示:

如果定义斜坡_V_1_0//斜坡_V_1_0

#定义加热器_0_引脚 12 //斜坡1.0
#定义加热器_1_引脚 -1 //斜坡1.0
#定义风扇引脚 11 //斜坡1.0

否则// RAMPS_V_1_1或RAMPS_V_1_2

#定义加热器_0_引脚 10 //斜坡1.1
#定义加热器_1_引脚 8 //斜坡1.1
#定义风扇引脚 9 //斜坡1.1

恩迪夫

定义加热器_2_引脚 -1

定义温度_0_PIN 2 //必须使用模拟输入编号,而不是数字输出编号!!!!!!!

定义温度_1_PIN 8 //必须使用模拟输入编号,而不是数字输出编号!!!!!!!

定义温度_2_PIN -1 //必须使用模拟输入编号,而不是数字输出编号!!!!!!!

恩迪夫

注意,床TEMP_1_PIN设置为模拟引脚8!
我在configuration. h文件中切换了的PID

观察到的输出(尽管事实上仅床打开):
正常T:51.70 B:50.00
正常T:52.16 B:51.00
正常T:53.15 B:52.00
正常T:54.59 B:53.00
正常T:56.15 B:55.00

顺便说一句,这在马林非Gen 6中曾经有效!

如果需要,我可以提供其他信息。谢谢马库斯

[马林1.0.0 b1]温度阅读 #19
贡献者

对不起,我不太明白你意思。你能再描述一遍吗?可能是因为这里没有咖啡。

[马林1.0.0 b1]温度阅读 #19

你能把你的整个配置文件发布到某个地方吗? PID控制中可能存在一些错误值。 您可以测试没有PID,看看它的阅读或控制…

[马林1.0.0 b1]温度阅读 #19

啊,好吧,“两个温度总是增加”是指阅读还是真的增加了?

[马林1.0.0 b1]温度阅读 #19

嗯,我看不到可以添加文件的位置。让我再解释一遍。
在马林0.9.10中,一切正常。我可以控制床和挤出机的温度,它们都读数正确,加热正确。

现在来看马林1.0.0 B配置:

  • 我在设置中使用热敏电阻:
    #定义热敏电阻加热器_0 1
    //#定义热敏电阻加热器_1 3
    #定义热敏电阻层1

#定义加热器_0_用途_热敏电阻
//#定义加热器_1_用途_热敏电阻
//#定义加热器_0_USES_AD595
//#定义加热器_1_USES_AD595

//仅选择其中一项来定义如何读取床温。
#定义床_使用_热敏电阻

  • Pid温度关闭。
    // PID设置:
    //取消注释以下行以启用PID支持。

//#定义PID温度
#如果定义PID温度

  • “最小最大温度”处于禁用状态。
    ////最低温度定义了加热器不能工作的温度
    //#定义加热器_0_最低温度5
    //#定义加热器_1_最低温度5
    //#定义床最低温度1

//当温度超过最高温度时,加热器将关闭。
//此功能的存在是为了保护您的hotend不会意外过热,但是热敏电阻短路/故障!
//您应该使用MINTEMP进行热敏电阻短路/故障保护。
//#定义加热器_0_MAXTEMP 275
//#定义加热器_1_MAXTEMP 275
//#定义床最高温度150

现在来看一下场景:
我把床打开,床的温度上升了(监视器和真实的的)。挤出机的监控温度也是如此,尽管它并没有真实的上升。
我把床关了。
我把挤出机的温度调好了。挤出机在现实中开始升温,但监测的温度保持在原来的水平。未监测到温度升高,但实际上加热器正在升温。正如我之前提到的,这在马林0.9.10中运行得非常好。

[马林1.0.0 b1]温度阅读 #19
贡献者

所以现在根本就没有办法得到正确的挤出机温度?
如果我理解正确的话,那是100%独立于床的,对吗?

[马林1.0.0 b1]温度阅读 #19
贡献者

哦,啊你知道吗
#定义热敏电阻加热器_0 1
以及
#定义热敏电阻层1
共享同一个PIN码?

[马林1.0.0 b1]温度阅读 #19

什么?这些设置是针对引脚的吗?我以为他们会选择100K热敏电阻表。它们是否覆盖pins. h中的配置。
好吧,我尝试termistorbed 8,只要我回到打印机和报告回来。

[马林1.0.0 b1]温度阅读 #19
贡献者

伯哈德,

数字是热敏电阻表,而不是引脚。

JostJoheinz你能把你的配置放在要点上吗?然后我可以看一下,它对其他人来说还可以,但我不明白为什么对你不起作用。
您的设置似乎正常。

你为什么换了温度计?

[马林1.0.0 b1]温度阅读 #19

希望我没做错:https://gist.github.com/1395694包括我的配置. h和引脚. h

我将引脚更改为模拟8,因为对于Makerbot加热构建平台,您需要在Ramps 1.2板上进行略微不同的配置。正如我之前所说:硬件配置可以完美地与0.9.10配合使用。模拟引脚的读取方式一定有(:-))问题,要么是我的配置和pins.h,要么是固件发生了变化。

[马林1.0.0 b1]温度阅读 #19
贡献者

你好,

你的配置看起来没问题。我不知道出了什么问题。

[马林1.0.0 b1]温度阅读 #19

从读取模拟引脚的方式肯定有所不同。
非GEN6分支和V1分支。

[马林1.0.0 b1]温度阅读 #19
贡献者

温度部分完全重写。
但是它对很多ppl都有效。基本的还可以。

我不知道为什么你会失败。你能测量一下模拟引脚吗?

2011年11月26日下午6点42分,马库斯·克林克写道:

从读取模拟引脚的方式肯定有所不同。
非GEN6分支和V1分支。


直接回复此邮件或在GitHub上查看:
https://github.com/ErikZalm/Marlin/issues/19#issuecomment-2882784

[马林1.0.0 b1]温度阅读 #19

嗯,让我和很多人不同的是我用第8针来读取床温。
硬件布线等都很好,因为一切都在0.9.10上运行。

我应该测量什么?假设模拟引脚是输入引脚。如果你有具体的想法,请告诉我。如果您能给予我该函数的名称和位置,我将不胜感激,该函数负责阅读模拟引脚,以便在将其转换为摄氏度之前获得原始值。也许我可以在代码中放入一些调试语句,以弄清楚发生了什么。

[马林1.0.0 b1]温度阅读 #19

“修复”它:

我将temperature.cpp的ISR定时器中的switch语句更改为使用analogRead,而不是使用更快的寄存器读取温度原始值。

请参见:https://gist.github.com/1397466

因此,写入寄存器的方式似乎存在一些错误。顺便说一句:我在一个Arduino Mega 2560上。我对AVR编程不是很坚定,但希望能帮助你解决这个问题。

[马林1.0.0 b1]温度阅读 #19
贡献者

我去查一下登记簿。analogRead不可用,因为它会长时间阻塞ISR。

谢谢你的测试。这给了我们一个方向。

[马林1.0.0 b1]温度阅读 #19

我想我已经找到问题了:
当模拟引脚为7时>,需要设置ADCSRB中的MUX5位,我刚刚得出结论,当引脚=7时,需要再次将其复位<。
此外,当模拟引脚为7时>,我们需要在写入ADMUX寄存器之前减去8(参见数据手册第291页,http://www.atmel.com/dyn/resources/prod_documents/doc2549.PDF
代码应该如下所示(对其他case语句重复)。我试过了,它给出了合理的结果,但正如我所说,我不是一个非常熟练的avr程序员。

#如果(温度_1引脚-1)> -1)
#如果(温度_1_引脚7)> 7)
ADCSRB|=_BV(多路复用器5);
模数转换器=((1参考0)<<((温度_1_引脚-0x08)0x07));| ((TEMP_1_PIN – 0x08) & 0x07));
#其他
ADCSRB =~_ BV(多路复用器5);&= ~_BV(MUX5);
模数转换器=((1参考0)<<(温度_1_引脚0x07));| (TEMP_1_PIN & 0x07));
结束编号
ADCSRA|= 1 ADSC ;//开始转换<<ADSC; // Start conversion
结束编号
#ifdef多面板
按钮_检查();
结束编号
温度状态= 3;
折断;

[马林1.0.0 b1]温度阅读 #19
贡献者

谢谢你找到这个愚蠢的窃听器。我查看了代码很多次,但没有找到它。
我会修好它的,现在好办了.

你是我认识的第一个使用上下ADC输入的人。大多数电路板仅使用上输入或下输入。

[马林1.0.0 b1]温度阅读 #19
贡献者

我推的修复。

justjoheinz你能测试如果这个修复工程. (And如果已修复,则关闭此问题)

[马林1.0.0 b1]温度阅读 #19

温度现在似乎工作正常!谢谢。不幸的是,我在使用git操作时丢失了每毫米设置,因此我没有打印,但我还是关闭了这个问题。

[马林1.0.0 b1]温度阅读 #19

你好,我和马库斯有同样的问题。在哪里可以下载此问题的修复程序?

问候

[马林1.0.0 b1]温度阅读 #19
贡献者

@knorst不太可能相同。2年前已修复。打开新问题并描述问题。

[马林1.0.0 b1]温度阅读 #19

@没有人不一样。把问题解决了。此固件使用模拟引脚编号,而不是板引脚编号。这是个错误。
问候

狂想曲 参考的 本期 狂想曲/马林 on Jul 10, 2020

lcortese pushed a commit to lcortese/Marlin-Ender-Bear that referenced this issue on Aug 2, 2020

kgilliam2 pushed a commit to kgilliam2/Marlin that referenced this issue on Oct 29, 2020

tonokip pushed a commit to ultimachine/Marlin that referenced this issue on Jan 25, 2022

[马林1.0.0 b1]温度阅读 #19

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

喜欢 (0)