PWM temp control heating element without sensor

Hi!

I became a huge fan of IQOS e-cigarette thing. It has a small ceramic heating blade what you stick into a tobacco roll, it heats up to 230c° and keeps there. When you inhale the tobacco steam, then the heating element cools down, so the iqos heats it back to temp. Sadly, the device has restrictions, like it only works for 6 mins, or 14 puffs. Which comes earlier.

I’d like to build a custom iqos heater based on the same heating element, but with arduino, display, etc. and without these restrictions.

I disassembled an iqos heater, and tried to find out how it works. The resistance of the heating element is about 1 ohm. I connected an oscilloscope across the connections of the heating element. (I attached the screenshots.)

The pulse height is 3V. When the heating element is totally cold, then it gives almost continuous pulses.
After few seconds, it gives a pulse spike, then several 1ms long pulses, then waits. The cycle time is 10ms.
When it reaches the desired temperature, then it gives two or three additional pulses in each cycle.

When I blow air on the heating element, the iqos gives more pulses again to heat up.

And here comes the tricky part: There is no tempreatrue sensor! It has only two wires to the heating element. How iqos measures the temperature? How does it know when it reached the 230c°? How could I build the same circuit?

it only works for 6 mins, or 14 puffs. Which comes earlier.

I would think you would be wasted after 5 puffs....

How does it know when it reached the 230c°? How could I build the same circuit?

What controls the heating element ?

At the heart of IQOS are sophisticated electronics that heat specially designed heated tobacco units. IQOS heats the tobacco just enough to release a flavorful nicotine-containing tobacco vapor but without burning the tobacco.

So, let me see if I have this straight, you are asking us to tell you how Phillip Morris (a tobacco company)
created the IQOS ? (that's all ?)

Well how hard could that be ?
We should be able to just Google IQOS schematic , right ?
IQOS_PCB.jpg
WF.jpg

Can you draw a schematic from the pcb ?

IQOS_PCB.jpg

WF.jpg

The heating wire is the temperature sensor. In your "Cold_.png" you see where the temperature measurements are taken - the voltage drop to 0V. These are in the other pngs, too, just not so prominent.

Resistance depends on the temperature of the element, if you drive constant voltage and sense current or vice-versa you can have a setpoint. If you sense current and voltage and do a little arithmetic you can also have a setpoint without needing constant current circuit or a voltage regulator in the heater circuit.

The temperature dependence of resistance is a property of the metal used in the element. If elements aren't
closely matched in properties you'd need to calibrate your resistance threshold for each replacement element.

Sensing via a heating element is a good way to avoid over-temperature due to sensor delays, since there is
no delay.

Has it occurred to you that Phillip Moris designed the IQOS that way because the filiment cannot be operated continuously for some reason ? Think about it, if they make more money if you buy more tobacco, then why design a vaper that burns less tobacco ?

raschemmel:
Has it occurred to you that Phillip Moris designed the IQOS that way because the filiment cannot be operated continuously for some reason ?

My guess would be they don’t want a aircraft to have a fire in the cargo hold because someone packed one these into a crammed suitcase and it kept overheated.

How long before you can reheat it ?

Dear all! Thank you for the responses.

So theoretically, I could measure the temperature of the Heating Element, by measuring the current flowing trough it. For this, I need a current measure "shunt" resistor in series with the HE, and I can measure the voltage on this resistor. But for doig this, I need a much lower resistance than the resistance of the HE to avoid larger voltage drop on it.
I used a multimeter to measure the resistance of the element. When it was cold, the multimeter dispalyed 2.6 ohms, when I put the heating element on an other working iqos heating element, it displayed 3.2. When I touched the two measuring cables of the multimeter together, it measured 1.6. I know, the multimeter is very inaccurate in this range, but approx. the resistance was 1 ohm cold, and 1.6 ohms hot.

I checked the PCB of the iqos heating pen, and I found a relatively large SMD resistor close to the HE, with an "R010" on it. If google correct, it is a 0.01 ohm resistor, this could be for current measurement.
If I add these together, calc with 3V, I get 2.97Amps cold, and 1.86A hot. The voltage on the 0.01 resistor for this currents are 0.03V and 0.0186V. The arduino analogRead() function divides 5V into 1024 steps, so the analogRead() would give the result of 6 or 7 when cold, and 3 or 4 when hot. Not too precise measurement, but Probably it could work. Or not?...

I think of dirivng the HE with Arduino from 5V and use a larger resistor, maybe a 0.3 ohm, if exists. Use real PWM signal to power it, because it is much easier to do with Arduino. It needs a bit more calculacion, but it can work.

What do you think?

raschemmel:
How long before you can reheat it ?

The iqos is a heating pen and a charging case for it. One charge for the pen lasts only for one cigarette. (6 mins)
Then I have to put the heating pen into the charging case, and it charges the pen full again within 4-5 minutes or so.

So 5 minutes is too long to wait for the next hit ?
What are u smoking, crack ?

It looks like the weak link is not the heating element but the battery.

“The arduino analogRead() function divides 5V into 1024 steps, so the analogRead() would give the result of 6 or 7 when cold, and 3 or 4 when hot. Not too precise measurement, but Probably it could work. Or not?.. ”

This is when you use “analogReference()”.

Quite simple to set it Internal, dropping from 5v to 1.1 which would give you 5x better read resolution at that voltage level.

The voltage on the 0.01 resistor for this currents are 0.03V and 0.0186V. The arduino analogRead() function divides 5V into 1024 steps, so the analogRead() would give the result of 6 or 7 when cold, and 3 or 4 when hot. Not too precise measurement, but Probably it could work. Or not?...

I don't want to state the obvious but these voltages are not ready to be measured.
Any technician or engineer would look at these and automatically calculate the gain needed to amplify these with an op amp differential amplifer.

A = VoutMAX/VINMAX

Let VoutMAX = VCCArduino = 5V

then:

A = 5V/0.03V = 166.6667

Round DOWN to 150

Let op amp = Linear LT1215
For amp shown is GAIN IS 10.0V/V
Note: the amp has a Vin + and a Vin - input.
The + input goes on the more positive side of shunt resistor and the "Vin -" on the more negative side.

For a gain of 150,
the circuit shown is followed by a standard (NON-DIFF) amplifier with a gain of 15

(RF/R2 =15)

With the given gain of 150, the max shunt resistor voltage (0.03V) will be amplified to 4.50 V

This makes your amplified voltage range : 4.50V (COLD) to 2.790 V (HOT) (within allowable 5V Arduino analog input voltage range)

This gives you a working voltage range of 1.710 V

This equates to 1.71 V/ 0.0048828125 V
= 350 arduino analog counts from cold to hot (or hot to cold)
( 0.0048828125 V per count to be exact)

Slumpert:
This is when you use “analogReference()”.

Quite simple to set it Internal, dropping from 5v to 1.1 which would give you 5x better read resolution at that voltage level.

Thank you! Very useful function, never heard of it!

raschemmel:
I don't want to state the obvious but these voltages are not ready to be measured.
Any technician or engineer would look at these and automatically calculate the gain needed to amplify these with an op amp differential amplifer.

Thank you too! Yes, I have heard about Operational Amplifiers long-long time ago. As long, as I totally forgot it. :slight_smile: So you say this is a typical application for op amps? Okay, I read more about them!

I have heard about Operational Amplifiers long-long time ago

The project to design the Operational Amplifier at the end of WWI was more secret than the Manhatten Project. Everyone has heard of that but they have never heard of the project to design the op amp. I
met one of the engineers who worked on it. He's the one who told me it was more secret than the
Manhatten Project. The purpose was to upgrade the targeting system for the 16" guns on the battleships.
They had to design the op amp before they could design the analog computer made with op amps.

So you say this is a typical application for op amps? Okay, I read more about them!

Read what ? I gave you the entire circuit schematic in my last post. Everything is there to build the circuit.
Didn't you read it ?